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

一种模型的训练方法、人脸识别方法、装置及介质与流程

2022-08-23 23:46:44 来源:中国专利 TAG:


1.本发明涉及人脸识别技术领域,尤其涉及一种模型的训练方法、人脸识别方法、装置及介质。


背景技术:

2.随着图像处理及计算机技术的日渐成熟,如今人脸检测技术已得到广泛应用。人脸识别技术是一种通过摄像头获取视频流或帧图像,从中提取人脸特征,并判断当前场景是否包含人脸的生物识别技术。
3.现有技术中主要通过如下几种方式以实现人脸检测:1)模板匹配;2)样本学习;3)神经网络。无论是哪种方式,在实际应用中均存在如下缺陷:在例如车库或地下室等暗环境下的人脸检测效率不高,同时还需要在受测者的高配合度下才能够完成,但若环境中亮度过高,则又会容易出现误检、漏检和多检等情形。因此,现有技术中的人脸检测技术在非限制性场景下的准确性和鲁棒性难以满足实际需求。


技术实现要素:

4.针对现有技术的不足,本发明提供一种模型的训练方法、人脸识别方法、装置及介质,解决现有技术中人脸检测的人脸检测技术在非限制性场景下的准确性和鲁棒性难以满足实际需求的问题。
5.为实现上述目的,本发明提供以下的技术方案:
6.一种模型的训练方法,包括:
7.采集样本图像,将所述样本图像作为预输入图像;
8.对所述预输入图像进行伽马变换,获得待输入图像;
9.将所述待输入图像作为训练数据,对待训练神经网络模型进行训练,获得训练好的检测模型。
10.可选地,所述对所述预输入图像进行伽马变换,包括:
11.获取所述预输入图像中每一个像素点的灰度值,判断所述像素点的灰度值是否超过预设的灰度阈值;
12.根据判断结果,基于伽马变换函数对每个像素点进行校正;
13.其中,所述伽马变换函数内包含有伽马参数;当所述像素点的灰度值超过预设的灰度阈值时,将伽马参数设为大于1,当所述像素点的灰度值未超过预设的灰度阈值时,将伽马参数设为小于1。
14.可选地,所述将所述待输入图像作为训练数据,对待训练神经网络模型进行训练,包括:
15.将所述待输入图像作为训练数据,基于预设的损失函数,对待训练神经网络模型进行训练;
16.所述预设的损失函数如下:
[0017][0018]
其中,x为待输入图像的输入值。
[0019]
可选地,所述将所述待输入图像作为训练数据,对待训练神经网络模型进行训练,还包括:
[0020]
采用十折交叉验证法,对所述待训练神经网络模型进行调参,获得检测模型参数。
[0021]
可选地,所述对所述预输入图像进行伽马变换之前,还包括:
[0022]
对所述预输入图像进行预处理。
[0023]
可选地,所述待训练神经网络模型的骨干网络为漏斗网络。
[0024]
本发明还提供了一种人脸识别方法,包括:
[0025]
采集待识别图像;
[0026]
将所述待识别图像输入至人脸识别模型中进行图像识别,获得识别结果;
[0027]
其中,所述人脸识别模型由如上任一项所述的模型的训练方法训练得到。
[0028]
本发明还提供了一种模型的训练装置,用于实现如上任一项所述的模型的训练方法,包括:
[0029]
第一采集单元,用于采集样本图像,并将所述样本图像作为预输入图像;
[0030]
图像处理单元,用于对所述预输入图像进行伽马变换,获得待输入图像;
[0031]
训练单元,用于将所述待输入图像作为训练数据,对待训练神经网络模型进行训练,获得训练好的检测模型。
[0032]
本发明还提供了一种人脸识别装置,用于实现如上所述的人脸识别方法,包括:
[0033]
第二采集单元,用于采集待识别图像;
[0034]
识别单元,用于将所述待识别图像输入至人脸识别模型中进行图像识别,获得识别结果。
[0035]
本发明还提供了一种存储介质,其上存储有计算机可执行指令,所述计算机可执行指令用于:
[0036]
执行如上任一项所述的模型的训练方法,
[0037]
或者,执行如上所述的人脸识别方法。
[0038]
与现有技术相比,本发明具有以下有益效果:
[0039]
本发明提供了一种模型的训练方法、人脸识别方法、装置及介质,在对图像进行伽马变换后,再输入待训练神经网络中进行训练,能够提升图像的暗部细节,增强图像的对比度,有利于实现非限制性场景下高效准确的人脸识别。
附图说明
[0040]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0041]
图1为本发明提供的一种模型的训练方法的流程图;
[0042]
图2为本发明提供的一种模型的训练方法中步骤s11的流程图;
[0043]
图3为本发明提供一种模型的训练方法中伽马变换的原理图;
[0044]
图4为本发明提供一种模型的训练方法中中心神经网络的模型结构;
[0045]
图5为本发明提供的一种模型的训练方法中改进边框回归损失函数的曲线图;
[0046]
图6为本发明提供的一种模型的训练方法中各测试组的预测准确率图;
[0047]
图7为本发明提供的一种人脸识别方法的流程图;
[0048]
图8为本发明提供的一种模型的训练装置的结构框图;
[0049]
图9为本发明提供的一种人脸识别装置的结构框图。
[0050]
上述图中:11、第一采集单元;12、图像处理单元;13、训练单元;21、第二采集单元;22、识别单元。
具体实施方式
[0051]
为使得本发明的目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0052]
需要理解的是,在本发明的描述中,具体实施例仅仅用于解释本发明,而非对本发明的限定。其中,示例性实施例被描述成作为流程图描绘的处理或方法;虽然流程图将各项操作或步骤处理描述形成一定的顺序,但是其中的许多操作或步骤是能够被并行地、并发地或者同时实施的,且各项操作的顺序可以被重新安排。当其操作或步骤完成时,对应处理可以被终止,还可以具有未包括在附图中的附加步骤。前面所述的处理可以对应于方法、函数、规程、子例程、子程序等等,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0053]
本发明使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。下面结合附图并通过具体实施方式来进一步说明本发明的技术方案;可以理解的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
[0054]
人脸检测技术是一种使用摄像头来获取视频流或者一帧帧图像,从中提取人脸特征,并通过一定的策略来判断当前场景是否包含人脸的生物识别技术。
[0055]
通常,人脸检测技术可以分为以下几个类别:
[0056]
1)模板匹配:首先需要建立一个基于先验信息库的“标准”模板,然后通过将提取到的图像与先验模板进行比较,最后通过能量函数来判别二者的相似度,相似度高的位置即为人脸。
[0057]
2)样本学习:首先需要收集大量“人脸”和“非人脸”的图像组成数据库,接着对数据库中两种样本进行统计学分析,然后通过一定的学习机制对上述样本进行总结与归纳,最后输出人脸判别规则式(模型参数)来对新输入的视频/图像进行识别。
[0058]
3)神经网络:神经网络的本质也是样本学习,首先通过数据库训练一个分类器,接着将预测与实际产生的误差通过反向传播的方式来更新分类器参数,然后多次迭代至分类器参数趋于稳定,输出模型参数,最后将训练好的模型对新输入的视频/图像进行识别与检
测。
[0059]
然而,现有的人脸识别系统在实际的应用中仍有一些局限性,比如在暗环境(车库、地下室等)下的人脸检测效率不高,同时还需要建立在受测者积极主动配合的条件下;再比如在高亮环境下出现误检、漏检、多检等,这些非限制性场景严重影响了人脸检测的准确性与鲁棒性。
[0060]
为解决前述问题,本发明提供了如下的技术方案。
[0061]
实施例一
[0062]
请参考图1,本发明实施例提供了一种模型的训练方法,包括:
[0063]
s11、采集样本图像,将样本图像作为预输入图像。
[0064]
该步骤中,将样本图像中的每一帧图像作为待训练神经网络模型的预输入,形成人脸图像数据集f(i,j,k);其中,i为图像的高度,j为图像的宽度,k为图像的通道数。其中,该步骤采用中心神经网络(gamma-centernet,gcn)作为待训练神经网络模型。
[0065]
具体地,采集样本图像的状态条件不限,如可以为不同的亮度条件、不同的背景条件,也可以为不同的图像采集角度。
[0066]
s12、对预输入图像进行伽马变换,获得待输入图像;
[0067]
该步骤中,待输入图像为新的图像集fg(i,j,k)。
[0068]
请参考图2,具体地,伽马变换的步骤如下:
[0069]
s111、获取预输入图像中每一个像素点的灰度值,判断像素点的灰度值是否超过预设的灰度阈值;
[0070]
s112、根据判断结果,基于伽马变换函数对每个像素点进行校正。
[0071]
其中,伽马变换函数内包含有伽马参数;当像素点的灰度值超过预设的灰度阈值时,将伽马参数设为大于1,当像素点的灰度值未超过预设的灰度阈值时,将伽马参数设为小于1。
[0072]
具体地,伽马变换的计算方法如下:
[0073]
计算每一个灰度级的概率密度pf(c)=nc/n,以及结合调节系数的概率密度其中,n为图像中的总像素数,nc为图像中像素值f为c的数目,为大于0的调节系数,为调节系数的概率;
[0074]
计算图像中每一个像素点的加权累计概率其中f
max
(i,j,k)是图像中的最大像素值;
[0075]
根据加权累计概率,求出伽马参数γ=1-f
l
(i,j,k),通过调节伽马参数γ就能控制增强的程度;
[0076]
最后,将伽马参数代入到公式fg(i,j,k)=a
×
(f(i,j,k)
×
g(m))
γ
中,计算出经过伽马变换后的输入图像;其中a是一个值为255的常数。
[0077]
如图3所示,当像素点的灰度值未超过预设的灰度阈值时,说明当前环境较暗,此时输入的伽马参数γ《1,输出的灰度值变大,相对应的动态范围也随着增加(纵坐标的变化量),从而增强了图片的亮度;
[0078]
当像素点的灰度值超过预设的灰度阈值,即当前的环境过亮时,此时输入的伽马
参数γ》1,对应的动态范围随之减小,从而减弱了图片的亮度。
[0079]
可以理解的是,当削弱亮度的动态变化范围小于增强亮度的动态变化范围时,图像的整体亮度仍然是加强的。
[0080]
通过伽马变换能够对低照度或高照度人脸图像进行对比度的调节,使得图像在低照度情况下增强图像较暗区域的灰度值,在高照度在情况下降低图像过亮区域的灰度值,进而能够更好地体现细节特征。可以理解的是,该步骤除了能够实现不同亮度环境下的人脸识别,还能够在不同背景下提高图像中人脸的对比度;此外,当样本图像是在不同的角度下拍摄采集得到时,通过伽马变换能够使远离于镜头侧的图像更为清晰,同样能够提高人脸识别的准确性。
[0081]
由此可见,伽马变换的引入有利于实现非限制性场景下高效准确的人脸识别。
[0082]
进一步地,对预输入图像进行伽马变换之前,还包括:对预输入图像进行预处理。
[0083]
其中,预处理包括对预输入图像进行归一化处理,具体位置采用直方图均衡化方法进行归一化,通过直方图变换函数将原始图像的像素灰度的概率密度均匀分布,经过预处理能够加强较小图像动态范围的对比度。同时,能够为在对非限制性场景下(相机过曝、曝光不足等)拍摄出的图像带来表达性更强的特征,有助于该场景下的人脸检测识别。
[0084]
具体地,直方图均衡化归一化中,直方图变换函数其中,m为灰度级数,且m为正整数,nm为灰度级数为m的像素数,n为图像中的总像素数。
[0085]
s13、将待输入图像作为训练数据,对待训练神经网络模型进行训练,获得训练好的检测模型。
[0086]
该步骤中,对待训练神经网络模型进行训练以获得一个分类器,接着将预测与实际产生的误差通过反向传播的方式来更新分类器参数,然后多次迭代至分类器参数趋于稳定,输出模型参数,最后将训练好的模型对待识别图像进行识别与检测。
[0087]
该步骤的训练过程中,将待输入图像作为训练数据,基于预设的损失函数,对待训练神经网络模型进行训练。
[0088]
请结合参考图4和图5,预设的损失函数为改进后的边框回归损失函数,该边框回归损失函数代替目标长宽损失函数,借此缓解离散点与非离散点之间的不平衡。
[0089]
预设的损失函数如下:
[0090][0091]
其中,l(x)为改进后的损失函数,x为待输入图像的输入值;此外,改进后的边框回归损失函数分段点设置为0.65,这样能够保证导函数的单调性,从而有助于神经网络的反向传播。
[0092]
该步骤中,将分段函数的“|x|《0.65”视作l1正则化,
““
|x|≥0.65”视作l2正则化,改进边框回归损失函数具有以下特征:l1正则化采用了等价无穷小的思想,l2正则化保持不变,这样具有如下优势:
[0093]
1)当|x|趋于0的时候,根据等价无穷小可将上式变为0.5x2(标准的l1正则化),保证了模型在取极小值点处的稳定性;
[0094]
2)当|x|趋于无穷大的时候,非离散点的梯度也会随之增大,从而使非离散点靠近真实值,加速了模型的收敛。
[0095]
如图5a所示,改进后的边框回归损失函数较改进前的损失函数有更大的损失(loss),使得模型能够更多的关注非离散点,使其逼近真实值;如图5b所示,改进后的边框回归损失函数具有更大的梯度,减少了非离散点逼近真实值的时间,从而加速模型的收敛。
[0096]
优选地,将待输入图像作为训练数据,对待训练神经网络模型进行训练,还包括:
[0097]
采用十折交叉验证法,对待训练神经网络模型进行调参,获得检测模型参数。
[0098]
十折交叉验证的实现示例如下:
[0099]
将图像集分成10组,取9组组成模型的训练集,剩余1组作为模型的验证集计算准确率,直至所有组别均作为模型的验证集时,取验证集上10个验证集准确率的平均值,以此为依据对待训练神经网络模型进行调参,直至模型达到最优拟合状态,即可求出检测模型参数。
[0100]
采用十折交叉验证法对待训练神经网络模型进行调参,能够防止模型的过拟合,降低偶然性,使得所得的检测模型参数更具有说服力。
[0101]
本实施例中,对待训练神经网络模型进行调参时,模型求解方法选用的为自适应学习率梯度下降法(adam),初始动量设置为0.9,初始步长(学习率)设置为0.01,迭代周期设置为150,这样能够进一步避免模型的过拟合。
[0102]
进一步地,步骤s3中,待训练神经网络模型为centernet(中心神经网络模型),其构建可基于keras的深度学习算法框架实现,keras是一个基于python语言编写的开源人工神经网络库,适合本发明人脸识别的模型设计、调试、评估、应用和可视化等。
[0103]
此外,如图4所示,centernet的骨干网络采用hourglass(漏斗)网络,hourglass网络是一个重复进行上采样和下采样操作的全卷积层神经网络,其中每一次上采样到下采样的过程组成了一个hourglass模块。由于该网络为极简网络,不需要设定anchors,大大减小了模型的计算量,符合模型在嵌入式平台上轻量化的要求。
[0104]
为了更好说明本发明实施例的效果,本实施例中,以人脸检测数据库(网址为http://vis-www.cs.umass.edu/fddb)中部分已公开的人脸图像,以及自行收集的人脸数据库中的图像相组合,作为验证对象数据库进行测试验证;该验证对象数据库有4000张图片,其中包含了曝光过度、曝光不足、不同分辨率的人脸图片,其中测试集有500张图片。利用该数据库,通过将所有训练集分成10个批次训练模型,然后在测试集上对比测试了4种不同的人脸检测方法。
[0105]
如图6所示,测试1为retina-face人脸检测算法,测试2为yolo-v3人脸检测算法,测试3为mtcnn人脸检测算法,测试4为基于本实施例提供的模型进行的人脸检测算法(gcn)。本次训练的硬件平台为一台便携式计算机平台,该平台具备一块gtx 2080ti的图形处理器(gpu)、内存ram8.0gb,能够满足以上算法的训练要求;此外,本次测试的手机为realme,将上述训练好的模型移植到手机中,在非限制场景下评估该模型的精度。
[0106]
从图5的最终实测结果可以观测到:测试1(retina-face人脸检测算法)和测试2(yolo-v3人脸检测算法)的人脸检测准确率在最后一个批次上的预测效果不相上下;测试3(mtcnn人脸检测算法)的人脸检测准确率优于测试1(retina-face人脸检测算法)和测试2(yolo-v3人脸检测算法)的的人脸检测准确率,且后期预测的稳定性也较高;
[0107]
尤其是本发明的测试4(基于本实施例提供的模型进行的人脸检测算法gcn),人脸检测准确率高达95%,较其他算法有着很大的精度优势,且后期预测的稳定性和测试3(mtcnn人脸检测算法)相持平,较测试1(retina-face人脸检测算法)和测试2(yolo-v3人脸检测算法)的人脸检测准确率高,结合下表1(模型大小统计表),不难得出本发明在兼顾效率的同时,还能满足嵌入式平台轻量化的要求,具有较高的实用性。
[0108]
检测模型retina-faceyolo-v3mtcnngcn模型大小(m)1.71.853.81.18
[0109]
表1
[0110]
可以理解的是,当摄像头/相机获取到新样本的时候,基于步骤s11~s13获取的训练好的检测模型的模型参数即可对新样本进行识别检测;然而,当相机新获取的是大量样本时,需要将新样本结合之前的样本进行模型的再次更新,使模型具备动态性、泛化性和实时性。
[0111]
实施例二
[0112]
请参考图7,基于前述实施例,本发明实施例提供了一种人脸识别方法,包括:
[0113]
s21、采集待识别图像;
[0114]
s22、将待识别图像输入至人脸识别模型中进行图像识别,获得识别结果。
[0115]
其中,人脸识别模型由如上实施例中提供的模型的训练方法训练得到。
[0116]
实施例三
[0117]
请参考图8,基于前述实施例,本发明实施例提供了一种模型的训练装置,用于实现如上任一项的模型的训练方法,包括:
[0118]
第一采集单元,用于采集样本图像,并将样本图像作为预输入图像;
[0119]
图像处理单元,用于对预输入图像进行伽马变换,获得待输入图像fg(i,j,k);
[0120]
训练单元,用于将待输入图像作为训练数据,对待训练神经网络模型进行训练,获得训练好的检测模型。
[0121]
其中,将样本图像作为预输入图像时,将样本图像中的每一帧图像作为gcn神经网络的预输入,形成人脸图像数据集f(i,j,k);其中,i为图像的高度,j为图像的宽度,k为图像的通道数。
[0122]
此外,第一采集单元采集样本图像,采集样本图像的状态条件不限,如可以为不同的亮度条件、不同的背景条件,也可以为不同的图像采集角度。
[0123]
图像处理单元进行伽马变换的步骤如下:获取预输入图像中每一个像素点的灰度值,判断像素点的灰度值是否超过预设的灰度阈值;根据判断结果,基于伽马变换函数对每个像素点进行校正。
[0124]
其中,伽马变换函数内包含有伽马参数;当像素点的灰度值超过预设的灰度阈值时,将伽马参数设为大于1,当像素点的灰度值未超过预设的灰度阈值时,将伽马参数设为小于1。
[0125]
具体地,伽马变换的计算方法如下:
[0126]
计算每一个灰度级的概率密度pf(c)=nc/n,以及结合调节系数的概率密度其中,n为图像中的总像素数,nc为图像中像素值f为c的数目,为大于0
的调节系数,为调节系数的概率;
[0127]
计算图像中每一个像素点的加权累计概率其中f
max
(i,j,k)是图像中的最大像素值;
[0128]
根据加权累计概率,求出伽马参数γ=1-f
l
(i,j,k),通过调节伽马参数γ就能控制增强的程度;
[0129]
最后,将伽马参数代入到公式fg(i,j,k)=a
×
(f(i,j,k)
×
g(m))
γ
中,计算出经过伽马变换后的输入图像;其中a是一个值为255的常数。
[0130]
请再次参考图3,当像素点的灰度值未超过预设的灰度阈值时,说明当前环境较暗,此时输入的伽马参数γ《1,输出的灰度值变大,相对应的动态范围也随着增加(纵坐标的变化量),从而增强了图片的亮度;
[0131]
当像素点的灰度值超过预设的灰度阈值,即当前的环境过亮时,此时输入的伽马参数γ》1,对应的动态范围随之减小,从而减弱了图片的亮度。
[0132]
可以理解的是,当削弱亮度的动态变化范围小于增强亮度的动态变化范围时,图像的整体亮度仍然是加强的。
[0133]
通过伽马变换能够对低照度或高照度人脸图像进行对比度的调节,使得图像在低照度情况下增强图像较暗区域的灰度值,在高照度在情况下降低图像过亮区域的灰度值,进而能够更好地体现细节特征。可以理解的是,该步骤除了能够实现不同亮度环境下的人脸识别,还能够在不同背景下提高图像中人脸的对比度;此外,当样本图像是在不同的角度下拍摄采集得到时,通过伽马变换能够使远离于镜头侧的图像更为清晰,同样能够提高人脸识别的准确性。
[0134]
由此可见,伽马变换的引入有利于实现非限制性场景下高效准确的人脸识别。
[0135]
此外,图像处理单元还用于在对预输入图像进行伽马变换之前,还包括:对预输入图像进行预处理。
[0136]
其中,预处理包括对预输入图像进行归一化处理,具体位置采用直方图均衡化方法进行归一化,通过直方图变换函数将原始图像的像素灰度的概率密度均匀分布,经过预处理能够加强较小图像动态范围的对比度。同时,能够为在对非限制性场景下(相机过曝、曝光不足等)拍摄出的图像带来表达性更强的特征,有助于该场景下的人脸检测识别。
[0137]
具体地,直方图均衡化归一化中,直方图变换函数其中,m为灰度级数,且m为正整数,nm为灰度级数为m的像素数,n为图像中的总像素数。
[0138]
请再次参考图4和图5,本实施例中,在训练单元将待输入图像作为训练数据,基于预设的损失函数,对待训练神经网络模型进行训练的过程中,预设的损失函数为改进后的边框回归损失函数,该边框回归损失函数代替目标长宽损失函数,借此缓解离散点与非离散点之间的不平衡。
[0139]
预设的损失函数如下:
[0140]
[0141]
其中,l(x)为改进后的损失函数,x为待输入图像的输入值,改进后的边框回归损失函数分段点设置为0.65,这样能够保证导函数的单调性,从而有助于神经网络的反向传播。
[0142]
该步骤中,将分段函数的“|x|《0.65”视作l1正则化,
““
|x|≥0.65”视作l2正则化,改进边框回归损失函数具有以下特征:l1正则化采用了等价无穷小的思想,l2正则化保持不变,这样具有如下优势:
[0143]
1)当|x|趋于0的时候,根据等价无穷小可将上式变为0.5x2(标准的l1正则化),保证了模型在取极小值点处的稳定性;
[0144]
2)当|x|趋于无穷大的时候,非离散点的梯度也会随之增大,从而使非离散点靠近真实值,加速了模型的收敛。
[0145]
如图5a所示,改进后的边框回归损失函数较改进前的损失函数有更大的损失(loss),使得模型能够更多的关注非离散点,使其逼近真实值;如图5b所示,改进后的边框回归损失函数具有更大的梯度,减少了非离散点逼近真实值的时间,从而加速模型的收敛。
[0146]
优选地,将待输入图像作为训练数据,对待训练神经网络模型进行训练,还包括:
[0147]
采用十折交叉验证法,对待训练神经网络模型进行调参,获得检测模型参数。
[0148]
十折交叉验证的实现示例如下:
[0149]
将图像集分成10组,取9组组成模型的训练集,剩余1组作为模型的验证集计算准确率,直至所有组别均作为模型的验证集时,取验证集上10个验证集准确率的平均值,以此为依据对待训练神经网络模型进行调参,直至模型达到最优拟合状态,即可求出检测模型参数。
[0150]
采用十折交叉验证法对待训练神经网络模型进行调参,能够防止模型的过拟合,降低偶然性,使得所得的检测模型参数更具有说服力。
[0151]
本实施例中,对待训练神经网络模型进行调参时,模型求解方法选用的为自适应学习率梯度下降法(adam),初始动量设置为0.9,初始步长(学习率)设置为0.01,迭代周期设置为150,这样能够进一步避免模型的过拟合。
[0152]
进一步地,训练单元所采用的待训练神经网络模型为centernet(中心神经网络模型),其构建可基于keras的深度学习算法框架实现,keras是一个基于python语言编写的开源人工神经网络库,适合本发明人脸识别的模型设计、调试、评估、应用和可视化等。
[0153]
请再次参考图4,centernet的骨干网络采用hourglass(漏斗)网络,hourglass网络是一个重复进行上采样和下采样操作的全卷积层神经网络,其中每一次上采样到下采样的过程组成了一个hourglass模块。由于该网络不需要设定anchors,大大减小了模型的计算量,符合模型在嵌入式平台上轻量化的要求。
[0154]
实施例四
[0155]
请参考图9,基于前述实施例,本发明实施例还提供了一种人脸识别装置,用于实现如上的人脸识别方法,包括:
[0156]
第二采集单元,用于采集待识别图像;
[0157]
识别单元,用于将待识别图像输入至人脸识别模型中进行图像识别,获得识别结果。
[0158]
实施例五
[0159]
基于前述实施例,本发明实施例还提供了一种存储介质,其上存储有计算机可执行指令,计算机可执行指令用于:
[0160]
执行如上任一项的模型的训练方法,
[0161]
或者,执行如上的人脸识别方法。
[0162]
基于前述各个实施例,本发明提供的模型的训练方法、人脸识别方法、装置及介质,其中所训练模型得到的分类器能够利用伽马变换提升人脸图像的暗部细节,增强了图像的对比度,同时又建立了基于centrenet的人脸检测模型,从而能够处理样本量大、特征复杂、相机过曝、曝光不足等问题,提升了相机在非限制场景下的检测精度。
[0163]
相比于其他直接使用神经网络进行人脸检测的方法,如采用改进lbp和轻量卷积神经网络的人脸检测方法,这些方法虽然能较好的提升检测上限,但依赖于网络的深度和广度,对设备的要求较高,且不符合嵌入式中模型的轻量化要求。
[0164]
本发明采用了极简的centernet网络结构作为待训练神经网络模型,无需anchor(anchor boxes是指预定义的框集合,其宽度和高度被选择以匹配数据集中目标的宽度和高度,anchor boxes包含可以在数据集中找到的目标大小的可能组合)和nms(非极大值抑制)等复杂的操作,在保证精度的同时极大的降低了模型复杂度,此外,本发明中结合了伽马变换,弥补了centernet模型在样本量大、特征复杂、相机过曝及曝光不足等非限制场景下的检测缺陷,这在实际嵌入式应用中具有更强的实用性。
[0165]
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

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

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

相关文献