基于se-resnet网络的人种识别方法、装置及计算机存储介质
技术领域
1.本发明涉及一种人种识别方法,特别是涉及一种基于se-resnet网络的人种识别方法、装置及计算机存储介质。
背景技术:
2.现有世界人种识别多为公认的四大种族,在人员管理工作中,由于不同民族国家的特点不同,需要尊重各自生活工作习惯,因此需要对人脸进行识别。现有技术着重在于区分四大种族如申请号为202010996916.2,201811372085.0的这两个专利解决的问题都是现成的人脸数据集由于包含了大多数的欧美人种数据所以对其他人种识别结果不佳的问题。而一个种族之内还分多种类型,现有的识别方法对这种特定的子类型的识别准确度还不高。
技术实现要素:
3.针对上述现有技术的缺陷,本发明提供了一种基于se-resnet网络的人种识别方法,解决四大人种中对于单个子类型分类识别的准确度不高的问题。
4.本发明技术方案如下:一种基于se-resnet网络的人种识别方法,包括以下步骤:
5.s1、获取真实人种图像数据为原始数据并对人脸进行检测,根据人脸五官对人脸进行旋转填充矫正并缩放至统一尺寸;
6.s2、去除人脸侧脸、低头及五官区域大面积遮挡的无特征图像;
7.s3、对图像数据进行亮度、对比度、清晰度、锐度的随机调整增加图像数据多样性后对图像进行高斯模糊处理;
8.s4、对图像数据的rgb通道分别进行减值处理,然后对数据集按分类打上标签区分一般人种人脸和特定人种人脸,所述一般人种为除特定人种外的其他人种;
9.s5、建立se-resnet网络,所述se-resnet网络依次包括第一卷积模块、第二卷积模块、第一池化层、第一se残差模块、第三卷积模块、第二池化层、第二se残差模块、第三se残差模块、第四卷积模块、第三池化层、第五至第九se残差模块、第五卷积模块、第四池化层、第十至第十二se残差模块、第一全连接层、第二全连接层和 softmax层,所述第一至第五卷积模块分别包括卷积层+激活层,所述se残差模块包括分别连接至eltwise层的主路和边路,所述主路依次为第一卷积层+激活层、第二卷积层 +激活层、平均池化层、全连接层、激活函数、全连接层和sigmoid然后连接至所述eltwise 层,所述边路直接连接所述eltwise层;
10.s6、采用步骤s4得到的数据集对所述se-resnet网络进行训练;
11.s7、选取待识别的图片输入至步骤s6训练得到的se-resnet网络进行分类识别得到结果。
12.进一步地,所述步骤s4中将打上标签的数据集分为测试集和训练集,所述步骤s6 包括s6-1,采用训练集对所述se-resnet网络进行训练,然后用测试集对应的原始数据测试
经过步骤s6-1训练的se-resnet网络,将测试结果中结果正确及结果错误的原始数据对应的测试集数据组成优化训练集;s6-2,采用优化训练集对步骤s6-1训练的 se-resnet网络进行优化训练。
13.进一步地,所述步骤s6-1训练时,优化器为sgd,损失函数为交叉熵损失函数,初始学习率为0.001,设定训练100000个epoch,学习策略为multistep,20000个epoch 学习率衰减到0.0001,40000个epoch学习率衰减到之前的0.00001,动量为0.99;所述步骤s6-2优化训练时,优化器为adam,损失函数为交叉熵损失函数,初始学习率为 0.0001,设定训练50000个epoch,学习策略为step,每5000个epoch学习率衰减到之前的50%,动量为0.99,所述se-resnet网络中的第二全连接层学习率与偏置学习率分别扩大10倍进行优化生成网络模型;所述步骤s7中进行分类识别时结果置信度设为 0.8。
14.进一步地,所述步骤s6-2优化训练时,所述优化训练集中步骤s6-1中测试结果错误的原始数据所对应的测试集数据占比为40%~50%。
15.进一步地,所述测试集、训练集以及所述优化训练集中一般人种类别与特定人种类别的数据比例为1:1。
16.进一步地,所述步骤s2的具体步骤包括:s2-1、采用第一神经网络对所述原始数据进行分类和定位,所述分类包括正脸、侧脸、低头,所述定位为左右两侧眉毛的眉头、眉中、眉尾的坐标点,左右两侧眼睛的内眼角、眼中、外眼角的坐标点,鼻子的鼻头、鼻翼两侧、鼻尾的坐标点,嘴巴的两端、上嘴唇、中间、下嘴唇的坐标点及左右两侧耳朵连接脸廓上下两处的坐标点;s2-2、比较左耳距离左眼的距离与右耳距离右眼的距离计算人脸正侧脸角度,比较两耳y值坐标与双眼y值坐标计算人脸俯仰角度;s2-3、采用第二神经网络对所述原始数据进行识别是否五官区域大面积遮挡;s2-4、去除判断为 90度侧脸、70度及以上低头以及五官区域大面积遮挡的无特征图像;所述第一神经网络结构为修改的vgg网络,基础层为一层卷积核为5步长为1的卷积层+激活层,一层池化层,三个卷积核为3步长为1的卷积层+激活层+池化层,一层全连接计算分类结果,采用分割层slice将计算结果分为所述分类和坐标点;所述第二神经网络结构为修改的 vgg网络,基础层为一层卷积核为7步长为4的卷积层+激活层,一层池化层,一层卷积核为3步长为1的卷积层+激活层,一层池化层,两层卷积核为3步长为1的卷积层+ 激活层,一层池化层,一层全连接层计算分类结果。
17.进一步地,所述步骤s3中的随机调整是随机选择亮度、对比度、清晰度、锐度是否进行调整,并对选择调整的参数随机选择正向调整或反向调整,所述正向调整和反向调整的调整幅度相同。
18.本发明还提供一种基于se-resnet网络的人种识别装置,包括处理器以及存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述基于 se-resnet网络的人种识别方法。
19.本发明还提供一种计算机存储介质,其上存储有计算机程序,所述计算机该程序被处理器执行时,实现上述基于se-resnet网络的人种识别方法。
20.本发明所提供的技术方案的优点在于:本发明针对基于图像识别人种的实际需求进行构建了se-resnet网络,提升识别速度并减少人工。前期通过图像数据中的人脸进行检测,剔除了特殊角度以及五官遮挡的劣质数据构成训练数据,能够减少对训练结果的影响,利用vgg网络对图像进行分类及定位,再配合角度的计算提升了数据剔除的效率与准确性。
通过初步训练和优化训练得到理想的识别网络模型并设置合理的置信度阈值,提高了识别的准确率。
附图说明
21.图1为本发明基于se-resnet网络的人种识别方法所采用的se-resnet网络的训练流程示意图。
22.图2为se-resnet网络结构示意图。
23.图3为se-resnet网络结构中se残差模块结构示意图。
具体实施方式
24.下面结合实施例对本发明作进一步说明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本说明之后,本领域技术人员对本说明的各种等同形式的修改均落于本技术所附权利要求所限定的范围内。
25.请结合图1所示,本实施例的基于se-resnet网络的人种识别方法的步骤如下:
26.s1、获得真实的人种图像数据,并生成数据集:具体地,本发明中所使用的人种数据集均由公司实际项目中抓拍获取,共计6w张一般人脸,6w张特定人种人脸。几乎涵盖了对不同摄像头不同成像不同时间段不同光照不同场景不同性别不同年龄段的图像,采用mtcnn进行人脸检测,并定位双眼、鼻尖、嘴巴两侧五个坐标点的坐标,与设定的五官点预置坐标(左眼30.2946,51.6963,右眼65.5318,51.5014,鼻尖48.0252,71.7366, 左嘴角33.5493,92.3655,右嘴角62.7299,92.2041)一一匹配,从而旋转伸缩实现矫正五官,使每张图片的五官在同一位置,图像旋转后出现空白的地方用黑色像素点补齐,完成对人脸进行旋转填充矫正,并统一缩放至96*112尺寸;
27.s2、去除不符合要求的人脸数据:人脸按需求分为一般人脸与其它特定人种人脸,比例为1:1,若存在混血现象,按人脸偏向分类。通过标定训练的修改的vgg网络,该修改的vgg网络基础层为一层卷积核为5步长为1的卷积层+激活层,一层池化层,三个卷积核为3步长为1的卷积层+激活层+池化层,一层全连接计算分类结果,采用分割层slice将计算结果分为3类与50个数值,3类分别为0-正脸,1-90度侧脸,2-75度以上低头,50个数值组成25个坐标点,分别为左右两侧眉毛的眉头、眉中、眉尾的坐标点,左右两侧眼睛的内眼角、眼中、外眼角的坐标点,鼻子的鼻头、鼻翼两侧、鼻尾的坐标点,嘴巴的两端、上嘴唇、中间、下嘴唇的坐标点及左右两侧耳朵连接脸廓上下两处的坐标点,输入图像尺寸为40*40的灰度图,前期通过选取5w张各个姿态的人脸,分别标记出左右两侧眉毛的眉头、眉中、眉尾的坐标点,左右两侧眼睛的内眼角、眼中、外眼角的坐标点,鼻子的鼻头、鼻翼两侧、鼻尾的坐标点,嘴巴的两端、上嘴唇、中间、下嘴唇的坐标点及左右两侧耳朵连接脸廓上下两处的坐标点共计25个坐标点,对上述网络进行训练,然后输入的人脸图像由训练后的该网络得出上述的五官坐标点,利用右眼到右耳x轴距离/(左眼到左耳x轴距离+右眼到右耳x轴距离)计算右眼宽度对于两眼宽度的占比,结果范围[0,1],将该值减0.5再乘2使其结果范围归一至[-1,1]由此计算得出[-1,0)为右侧脸,(0,1]为向左侧脸,利用其平方乘90计算偏转角度来统计脸部左右朝向与朝向角,利用y=kx+b与两侧耳朵上面两点计算对应k1、b1,同理用两侧耳朵下面两点计算对应k2、b2。设x=左眼眼中x轴坐标点分别计算y1、y2,并取y1、y2平均值y0,
设y=左眼眼中y轴坐标点,利用n*(y-y0/|y2-y1|),n设为30,并通过比较最大值与最小值将取值范围规范到[-90,90]计算脸部俯仰角,若值大于0则为抬头,小于 0为低头。通过另一训练的修改的vgg网络,该网络基础层为一层卷积核为7步长为4 的卷积层+激活层,一层池化层,一层卷积核为3步长为1的卷积层+激活层,一层池化层,两层卷积核为3步长为1的卷积层+激活层,一层池化层,一层全连接层作为计算分类结果,输入图像尺寸为96*60的三通道图像,图像为经过mtcnn开源网络检测并矫正的统一缩放到96*112尺寸的人脸,将该人脸从高度为62的地方开始截到图像末尾截取成96*60的仅有鼻子以下部位的部分人脸,训练采用各5w张共计10w张以上述方式获得的人脸标记为0-遮挡1-正常人识别是否五官区域大面积遮挡。在原始数据集中去除通过上述两个网络判断为90度侧脸与70度及以上低头,并去除五官区域大面积遮挡的无明显特征的人脸数据;
[0028]
s3、对图像进行数据增强,利用opencv对图像进行亮度、对比度、清晰度、锐度调整,采用四个[0,1]随机数对上述四个维度进行调整,如对比度随机数0则不调整对比度,随机数1则调整对比度,再设置随机数为调整幅度,亮度调整幅度为[0.5,1.5]对比度调整幅度为[0.5,1.5],清晰度调整幅度为[0.5,1.5],锐度调整幅度为[0.5,1.5],增加样本多样性。
[0029]
然后利用高斯公式
[0030][0031]
设定σ取值,本实施例的具体取值是3,计算图像权重矩阵,每个像素点乘权重值得到中心点高斯模糊的值,以此对进行亮度、对比度、清晰度、锐度调整后的每个图像进行高斯模糊处理增强样本泛化能力。
[0032]
s4、对图像进行预处理,将图像统一为三通道彩图,并对图像进行减亮处理,具体是对bgr通道分别减去各通道均值104,117,123,均值为通过s2的人脸图像分别计算 bgr各通道的平均值所得,图像减去均值方便消除图像的共性,突显个体差异。消除图像共性也包括移除图像的平均亮度值,从而一定程度上减少光照对数据的影响,将数据集按分类打上标签,标签形式为(n,l),n为图片路径,l=0表示一般人脸,l=n-1表示特定不同人种人脸,随机抽取10%作为测试集,90%作为训练集,并将数据集进行随机打乱。
[0033]
s5、请结合图2及图3所示,基于resnet50网络和se残差模块构建的se-resnet 网络依次包括第一卷积模块、第二卷积模块、第一池化层、第一se残差模块、第三卷积模块、第二池化层、第二se残差模块、第三se残差模块、第四卷积模块、第三池化层、第五至第九se残差模块、第五卷积模块、第四池化层、第十至第十二se残差模块、第一全连接层、第二全连接层和softmax层,该se-resnet网络在resnet50网络的五个卷积模块中的后四个模块之后分别插入不同数量的se残差模块,其中resnet50 网络的所有的卷积模块包括了卷积层+激活层。该se残差模块包括主路依次为第一卷积层+激活层、第二卷积层+激活层、平均池化层、全连接层、激活函数(relu)、全连接层和sigmoid然后连接至eltwise层,se残差模块包括边路直接连接eltwise层,基于此新建的se-resnet网络对训练集进行训练。
[0034]
s6-1、训练参数为数据输入尺寸为96*112,batchsize=64,优化器sgd,损失函数使用交叉熵损失函数,初始学习率为0.001,设定训练100000个epoch,学习策略为 multistep,20000个epoch学习率衰减到之前的10%,40000个epoch学习率衰减到之前的
10%,动量为0.99。
[0035]
s6-2、实际使用中若发现新架设场景准确率低于80%,选取步骤s6-1中训练生成模型测试该场景摄像头获取的新样本,将测试结果按类别分别选出2w张样本,其中40%错误样本,选出60%正确样本,类别数量比例为1:1,对这些图像采用如步骤s1至s4 同样方式进行处理,然后在步骤s6-1训练生成的模型基础上进行优化,此时输入尺寸为96*112,batchsize=64,优化器为adam,损失函数使用交叉熵损失函数,初始学习率为0.0001,设定训练50000个epoch,学习策略为step,每5000个epoch学习率衰减到之前的50%,动量为0.99,网络中最后一层全连接层(第二全连接层)学习率与偏置学习率分别扩大10倍进行优化生成模型。
[0036]
s8、实际使用,选取摄像头搜集的图片,采用mtcnn进行人脸检测、人脸角度矫正,通过两个修改的vgg网络分别计算筛除90度侧脸和大面积遮挡的无明显特征的人脸,对人脸进行rgb通道的[104,117,123]减均值处理,将人脸送入步骤s6-2中优化完成的 se-resnet网络,将结果置信度设为0.8,即可得到人种分类结果。种族准确率(即种族模型分对样本数/种族模型分出样本数)为99.9%,召回率(即种族模型分对样本数/种族样本总数)为85%。
[0037]
应当指出的是,上述实施例的具体方法可形成计算机程序产品,因此,本技术实施的计算机程序产品可存储在在一个或多个计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上。另外本技术可采用硬件、软件或者硬件与软件结合的方式进行实施,或者是构成至少包含一个处理器及存储器的计算机装置,该存储器即储存了实现上述流程步骤的计算机程序,处理器用于执行该存储器上的计算机程序进行形成上述的实施例的方法步骤。
技术特征:
1.一种基于se-resnet网络的人种识别方法,其特征在于,包括以下步骤:s1、获取真实人种图像数据为原始数据并采用mtcnn模型对人脸进行检测,根据人脸五官对人脸进行旋转填充矫正并缩放至统一尺寸;s2、去除人脸侧脸、低头及五官区域大面积遮挡的无特征图像;s3、对图像数据进行亮度、对比度、清晰度、锐度调整增加图像数据多样性后对图像进行高斯模糊处理;s4、对图像数据的rgb通道分别进行减值处理,然后对数据集按分类打上标签区分一般人种人脸和特定人种人脸,所述一般人种为除特定人种外的其他人种;s5、建立se-resnet网络,所述se-resnet网络依次包括第一卷积模块、第二卷积模块、第一池化层、第一se残差模块、第三卷积模块、第二池化层、第二se残差模块、第三se残差模块、第四卷积模块、第三池化层、第五至第九se残差模块、第五卷积模块、第四池化层、第十至第十二se残差模块、第一全连接层、第二全连接层和softmax层,所述第一至第五卷积模块分别包括卷积层+激活层,所述se残差模块包括分别连接至eltwise层的主路和边路,所述主路依次为第一卷积层+激活层、第二卷积层+激活层、平均池化层、全连接层、激活函数、全连接层和sigmoid然后连接至所述eltwise层,所述边路直接连接所述eltwise层;s6、采用步骤s4得到的数据集对所述se-resnet网络进行训练;s7、选取待识别的图片输入至步骤s6训练得到的se-resnet网络进行分类识别得到结果。2.根据权利要求1所述的基于se-resnet网络的人种识别方法,其特征在于,所述步骤s4中将打上标签的数据集分为测试集和训练集,所述步骤s6包括s6-1,采用训练集对所述se-resnet网络进行训练,然后用测试集对应的原始数据测试经过步骤s6-1训练的se-resnet网络,将测试结果中结果正确及结果错误的原始数据对应的测试集数据组成优化训练集;s6-2,采用优化训练集对步骤s6-1训练的se-resnet网络进行优化训练。3.根据权利要求2所述的基于se-resnet网络的人种识别方法,其特征在于,所述步骤s6-1训练时,优化器为sgd,损失函数为交叉熵损失函数,初始学习率为0.001,设定训练100000个epoch,学习策略为multistep,20000个epoch学习率衰减到0.0001,40000个epoch学习率衰减到之前的0.00001,动量为0.99;所述步骤s6-2优化训练时,优化器为adam,损失函数为交叉熵损失函数,初始学习率为0.0001,设定训练50000个epoch,学习策略为step,每5000个epoch学习率衰减到之前的50%,动量为0.99,所述se-resnet网络中的第二全连接层学习率与偏置学习率分别扩大10倍进行优化生成网络模型。4.根据权利要求2所述的基于se-resnet网络的人种识别方法,其特征在于,所述步骤s6-2优化训练时,所述优化训练集中步骤s6-1中测试结果错误的原始数据所对应的测试集数据占比为40%~50%。5.根据权利要求2所述的基于se-resnet网络的人种识别方法,其特征在于,所述测试集、训练集以及所述优化训练集中一般人种类别与特定人种类别的数据比例为1:1。6.根据权利要求1所述的基于se-resnet网络的人种识别方法,其特征在于,所述步骤s2的具体步骤包括:s2-1、采用第一神经网络对所述原始数据进行分类和定位,所述分类包括正脸、侧脸、低头,所述定位为左右两侧眉毛的眉头、眉中、眉尾的坐标点,左右两侧眼睛的内眼角、眼中、外眼角的坐标点,鼻子的鼻头、鼻翼两侧、鼻尾的坐标点,嘴巴的两端、上嘴
唇、中间、下嘴唇的坐标点及左右两侧耳朵连接脸廓上下两处的坐标点;s2-2、比较左耳距离左眼的距离与右耳距离右眼的距离计算人脸正侧脸角度,比较两耳y值坐标与双眼y值坐标计算人脸俯仰角度;s2-3、采用第二神经网络对所述原始数据进行识别是否五官区域大面积遮挡;s2-4、去除判断为90度侧脸、70度及以上低头以及五官区域大面积遮挡的无特征图像;所述第一神经网络结构为修改的vgg网络,基础层为一层卷积核为5步长为1的卷积层+激活层,一层池化层,三个卷积核为3步长为1的卷积层+激活层+池化层,一层全连接计算分类结果,采用分割层slice将计算结果分为所述分类和坐标点;所述第二神经网络结构为修改的vgg网络,基础层为一层卷积核为7步长为4的卷积层+激活层,一层池化层,一层卷积核为3步长为1的卷积层+激活层,一层池化层,两层卷积核为3步长为1的卷积层+激活层,一层池化层,一层全连接层计算分类结果。7.根据权利要求1所述的基于se-resnet网络的人种识别方法,其特征在于,所述步骤s3中的随机调整是随机选择亮度、对比度、清晰度、锐度是否进行调整,并对选择调整的参数随机选择正向调整或反向调整,所述正向调整和反向调整的调整幅度相同。8.一种基于se-resnet网络的人种识别装置,包括处理器以及存储器,所述存储器上存储有计算机程序,其特征在于,所述计算机程序被所述处理器执行时,实现权利要求1至7中任意一项所述的基于se-resnet网络的人种识别方法。9.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机该程序被处理器执行时,实现权利要求1至7中任意一项所述的基于se-resnet网络的人种识别方法。
技术总结
本发明公开了一种基于SE-ResNet网络的人种识别方法,包括以下步骤:获取真实人种图像数据为原始数据并对人脸进行检测并旋转填充矫正缩放至统一尺寸;去除人脸侧脸、低头及五官区域大面积遮挡的无特征图像;对图像数据进行多样性增强;对图像数据的RGB通道分别进行减值处理后分类打标签;在ResNet50基础上添加SE残差模块建立SE-ResNet网络,并进行训练;选取待识别的图片输入至训练得到的SE-ResNet网络进行分类识别得到结果。本发明通过对采集的图像数据进行检测处理,提出无明显特征数据后对SE-ResNet网络训练,具有较好地识别速度和准确性。准确性。准确性。
技术研发人员:虞志媛 杨立成
受保护的技术使用者:上海弘目智能科技有限公司
技术研发日:2021.11.05
技术公布日:2022/3/7