CN115376195A - 训练多尺度网络模型的方法及人脸关键点检测方法 - Google Patents
训练多尺度网络模型的方法及人脸关键点检测方法 Download PDFInfo
- Publication number
- CN115376195A CN115376195A CN202211228821.1A CN202211228821A CN115376195A CN 115376195 A CN115376195 A CN 115376195A CN 202211228821 A CN202211228821 A CN 202211228821A CN 115376195 A CN115376195 A CN 115376195A
- Authority
- CN
- China
- Prior art keywords
- network model
- image
- face key
- scale
- loss
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/52—Scale-space analysis, e.g. wavelet analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请实施例涉及神经网络技术领域,公开了一种训练多尺度网络模型的方法及人脸关键点检测方法。其中,所述训练多尺度网络模型的方法包括:将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,所述多尺度神经网络模型包括特征提取模块、组合模块和预测模块;利用损失函数计算所述第一人脸关键点预测图像和所述第一样本图像的真实关键点图像之间的损失,对所述多尺度神经网络模型进行迭代训练,直至收敛,得到多尺度网络模型。本申请能够实现多尺度特征图的动态组合,获得更具识别能力的特征表达,获得的多尺度网络模型保证较好的检测性能上限,可以减少网络内存占用和加速计算,且利于提高人脸关键点的精确定位。
Description
技术领域
本申请实施例涉及神经网络技术领域,尤其涉及一种训练多尺度网络模型的方法及人脸关键点检测方法。
背景技术
人脸关键点检测是一项基础的人脸分析任务,高效的人脸关键点定位有利于人脸识别系统、人脸表情识别等应用的开发。
本申请发明人在实现本申请实施例的过程中,发现:现阶段大部分基于深度卷积神经网络的人脸关键点检测方法都是在设计大参数量网络,通过较大的计算量来得到精确的人脸关键点定位,而轻量级人脸关键点检测方法对于小型设备的部署更加友好,但是,现有技术中却没有较大计算量和轻量级人脸检测方法的结合,现有的检测模型存在计算量较大的缺陷或检测精度不够的缺陷。
发明内容
本申请实施例的目的是提供一种训练多尺度网络模型的方法及人脸关键点检测方法,实现多尺度特征图的动态组合,获得更具识别能力的特征表达,获得的多尺度网络模型保证较好的检测性能上限,可以减少网络内存占用和加速计算,且利于提高人脸关键点的精确定位。
为解决上述技术问题,本申请实施例采用以下技术方案:
第一方面,本申请实施例中提供给了一种训练多尺度网络模型的方法,包括:
将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,所述多尺度神经网络模型包括特征提取模块、组合模块和预测模块,所述特征提取模块用于提取多尺度特征图,所述多尺度包括多通道和/或多分辨率,所述组合模块用于基于权重参数加权组合所述多尺度特征图中的至少两个以获取新特征图,所述预测模块用于对所述新特征图进行人脸关键点预测,以获取所述第一人脸关键点预测图像;
利用损失函数计算所述第一人脸关键点预测图像和所述第一样本图像的真实关键点图像之间的损失,对所述多尺度神经网络模型进行迭代训练,直至收敛,得到多尺度网络模型;
在一些实施例中,所述方法还包括:
将所述多尺度网络模型的各所述权重参数中小于第一剪枝阈值的权重参数置为0,以获得第一轻量级网络模型。
在一些实施例中,所述方法还包括:
将所述多尺度网络模型作为第一教师模型,且将第二样本图像输入所述多尺度网络模型,获得第二人脸关键点预测图像作为软标签;
将所述第二样本图像输入所述第一轻量级网络模型,获得第三人脸关键点预测图像;
计算所述第二人脸关键点预测图像和所述第三人脸关键点预测图像之间的损失,对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第二轻量级网络模型。
在一些实施例中,所述方法还包括:
获取所述第一轻量级网络模型的第一对偶网络模型;
将第三样本图像输入所述第一轻量级网络模型,获得第四人脸关键点预测图像;
将所述第三样本图像输入所述第一对偶网络模型,获得第五人脸关键点预测图像;
计算所述第四人脸关键点预测图像和所述第五人脸关键点预测图像之间的第一对偶损失,以及计算所述第五人脸关键点预测图像和所述第四人脸关键点预测图像之间的第二对偶损失;
利用所述第一对偶损失对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第三轻量级网络模型;
利用所述第二对偶损失对所述第一对偶网络模型进行迭代训练,直至收敛,得到第四轻量级网络模型。
在一些实施例中,所述方法还包括:
获取所述第一轻量级网络模型的第二对偶网络模型;
将所述多尺度网络模型作为第二教师模型,且将第四样本图像输入所述多尺度网络模型,获得第六人脸关键点预测图像作为软标签;
将所述第四样本图像输入所述第一轻量级网络模型,获得第七人脸关键点预测图像;
将所述第四样本图像输入所述第二对偶网络模型,获得第八人脸关键点预测图像;
计算所述第七人脸关键点预测图像和所述第八人脸关键点预测图像之间的第一蒸馏损失,以及计算所述第八人脸关键点预测图像和所述第七人脸关键点预测图像之间的第二蒸馏损失;
计算所述第六人脸关键点预测图像和所述第七人脸关键点预测图像之间的第三蒸馏损失,以及计算所述第六人脸关键点预测图像和所述第八人脸关键点预测图像之间的第四蒸馏损失;
计算所述第七人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第一误差损失,以及所述第八人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第二误差损失;
利用所述第一蒸馏损失、所述第三蒸馏损失和所述第一误差损失之和对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第五轻量级网络模型;
利用所述第二蒸馏损失、所述第四蒸馏损失和所述第二误差损失之和对所述第一轻量级网络模型的第二对偶网络模型进行迭代训练,直至收敛,得到第六轻量级网络模型。
在一些实施例中,所述将所述第四样本图像输入所述第一轻量级网络模型,获得第七人脸关键点预测图像,包括:
对所述第一轻量级网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第七人脸关键点预测图像;
所述将所述第四样本图像输入所述第一轻量级网络模型的第二对偶网络模型,获得第八人脸关键点预测图像,包括:
对所述第一轻量级网络模型的第二对偶网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第八人脸关键点预测图像。
在一些实施例中,所述特征提取模块包括输入模块,至少一个第一常规模块、至少两个采样模块和至少两个第二常规模块;
所述输入模块包括至少两个卷积层,所述卷积层包括第一卷积操作、第一批标准化操作及第一Relu激活操作,用于对所述第一样本图像进行特征编码以及降低分辨率;
所述第一常规模块和所述第二常规模块均包括至少两个卷积层,每个卷积层包括第二卷积操作、第二批标准化操作及第二Relu激活操作,所述第一常规模块用于对所述输入模块输出的特征图进行连续编码;
所述至少两个采样模块,用于对所述第一常规模块输出的特征图进行多种方式采样,获得多个通道和多个分辨率的特征图;
所述第二常规模块用于将所述采样模块输出的特征图进行连续编码,所述至少两个所述第二常规模块输出所述多尺度特征图。
在一些实施例中,所述组合模块还用于获取第i个所述常规模块输出的第j个第二新特征图后,将第j个第二新特征图乘以一个对应的权重参数并进行求和,获得中间新特征图;
所述多尺度网络模型还包括输出模块,用于融合多个所述组合模块输出的中间新特征图;
所述预测模块,还用于对所述中间新特征图进行人脸关键点预测,以获取第一人脸关键点预测图像。
第二方面,本申请实施例还提供一种人脸关键点检测方法,所述方法包括:
获取待测原始图像;
将所述待测原始图像输入人脸关键点检测模型中,获得人脸关键点检测结果,所述人脸关键点检测模型采用如第一方面的方法获得的多尺度网络模型。
第三方面,本申请还提供一种电子设备,所述电子设备包括:
至少一个处理器,以及
存储器,所述存储器与所述处理器通信连接,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面和第二方面所述的方法。
第五方面,本申请还提供一种非易失性计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,当所述计算机可执行指令被电子设备执行时,使所述电子设备执行如第一方面和第二方面任一项所述的方法。
本申请实施例的有益效果:区别于现有技术的情况,本申请实施例提供的训练多尺度网络模型的方法、人脸关键点检测方法,在训练多尺度网络模型的时候,将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,通过多尺度神经网络模型的特征提取模块提取多尺度特征图,组合模块基于权重参数加权组合多尺度特征图中的至少两个,预测模型对组合模块输出的新特征图进行人脸关键点预测,实现多尺度特征图的动态组合,获得更具识别能力的特征表达,获得的多尺度网络模型保证较好的检测性能上限,利于提高人脸关键点的精确定位。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本申请训练多尺度网络模型的方法的一个实施例的流程示意图;
图2是本申请训练多尺度网络模型的方法的一个实施例的多尺度网络模型的模型结构示意图;
图3是本申请训练多尺度网络模型的方法的一个实施例的第二轻量级网络模型的模型结构示意图;
图4是本申请训练多尺度网络模型的方法的一个实施例的知识蒸馏的结构示意图;
图5是本申请训练多尺度网络模型的方法的一个实施例的对偶蒸馏的结构示意图;
图6是本申请的训练多尺度网络模型的方法的一个实施例的联合蒸馏的结构示意图;
图7是本申请人脸关键点检测方法的一个实施例的流程示意图;
图8是本申请训练多尺度网络模型的装置的一个实施例的结构示意图;
图9是本申请人脸关键点检测检测装置的一个实施例的结构示意图;
图10是本申请电子设备的一个实施例中控制器的硬件结构示意图。
具体实施方式
下面结合具体实施例对本申请进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本申请,但不以任何形式限制本申请。应当指出的是,对本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进。这些都属于本申请的保护范围。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,如果不冲突,本申请实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。此外,本文所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本说明书中在本申请的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本申请。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
此外,下面所描述的本申请各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本申请实施例提供的人脸关键点检测方法和装置可以应用于电子设备,可以理解的是,电子设备中,设置有控制器、图像获取模块。
可以理解的,电子设备可以是智能手机、计算机设备、笔记本电脑等,带有图像获取模块,用于获取样本图像。
本申请实施例提供的训练多尺度网络模型的方法,在训练获得网络模型后,用于检测人脸关键点。
请参见图1,为应用于本申请的训练多尺度网络模型的方法的实施例的流程示意图,所述方法可以由电子设备中的控制器执行,该方法包括步骤S101-步骤S102。
S101:将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,所述多尺度网络模型包括特征提取模块、组合模块和预测模块,所述特征提取模块用于提取多尺度特征图,所述多尺度包括多通道和/或多分辨率,所述组合模块用于基于权重参数加权组合所述多尺度特征图中的至少两个以获取新特征图,所述预测模块用于对所述新特征图进行人脸关键点预测,以获取所述第一人脸关键点预测图像。
第一样本图像可以为一张原始图像,为多通道图像,用矩阵c*h*w表示,c表示通道数,h表示图像的高度,w表示图像的宽度,h*w表示图像的尺寸(分辨率),原始图像为彩色图像时,具有红色蓝色绿色三个通道,则c=3,如果该原始图像的宽度和高度均为256,那么,第一样本图像可以用3*256*256表示。第一样本图像还可以是多张图像。
如图2所示,图2为本申请的多尺度神经网络模型的结构示意图。所述多尺度神经网络模型包括特征提取模块、组合模块和预测模块。
其中,所述特征提取模块用于提取多尺度特征图,所述多尺度包括多通道和/或多分辨率。
在其中一些实施方式中,所述特征提取模块包括输入模块、至少一个第一常规模块、至少两个采样模块和至少两个第二常规模块;
所述输入模块包括至少两个卷积层,所述卷积层包括第一卷积操作、第一批标准化操作及第一Relu激活操作,用于对所述样本图像进行特征编码以及降低分辨率。
具体地,在输入模块中,以两个卷积层为例,卷积层可以为步长为2的3*3卷积层,每个卷积层包括一个普通的卷积操作,为第一卷积操作、第一批标准化操作和第一Relu激活操作。批标准化操作(Batch Normalization)是一种对数值的特殊函数变换方法,在神经网络中,对原始的某个数值是x,套上一个起到规范化作用的函数,对规范化之前的数值x进行转换,形成一个规范化后的数值。Relu(Rectified Linear Unit,修正线性单元),Relu激活函数是常用的神经激活函数,把所有的负值都变为0,而正值不变,为单侧抑制操作。
输入模块作为第一样本图像的输入入口,当3*256*256的第一样本图像输入到输入模块后,会经过两个卷积层的卷积操作,在经过第一个步长为2的3*3的卷积层、第一批标准化操作及第一Relu激活操作时,获得的图像的通道数和维度为32*128*128;将32*128*128的图像经过第二个步长为2的3*3的卷积层、第一批标准化操作及第一Relu激活操作时,获得的图像为64*64*64。
综上可知,通过输入模块的第一卷积操作、第一批标准化操作及第一Relu激活操作对第一样本进行特征编码以及降低分辨率,将第一样本图像从3*256*256输出为64*64*64的特征图。
所述第一常规模块和所述第二常规模块均包括至少两个卷积层,每个卷积层包括第二卷积操作、第二批标准化操作及第二Relu激活操作,所述第一常规模块用于对所述输入模块输出的特征图进行连续编码。
其中,第一常规模块包括至少两个卷积层,如四个深度可分离卷积层(Depth-wiseSeparable Convolution),每个卷积层包括第二卷积操作、第二批标准化操作及第二Relu激活操作。第二卷积操作为一个3*3分组卷积操作和一个1*1点卷积操作。第一常规模块用于对所述输入模块输出的特征图进行连续编码,生成维度不变的中间特征图,即,输入模块输出的是64*64*64的特征图,那么经过第一常规模块处理后,第一常规模块输出的是维度不变的64*64*64的特征图。
所述至少两个采样模块,用于对所述第一常规模块输出的特征图进行多种方式采样,获得多个通道和多个分辨率的特征图。
进一步地,采样模块包括无采样模块、上采样模块和下采样模块三种操作类型,无采样模块由一个步长为1的3*3卷积层构成,用于改变特征通道数且不影响分辨率大小;上采样模块包括一个1*1卷积层和一个双线插值操作,用于增加特征图的分辨率大小;下采样模块包括若干个步长为2的3*3卷积层,用于对输入的特征图进行连续编码和减少分辨率大小。
所述第二常规模块用于将所述采样模块输出的特征图进行连续编码,所述至少两个所述第二常规模块输出所述多尺度特征图。例如,第一常规模块输出64*64*64的特征图,在经过权重参数为的无采样操作后,获得18*64*64的特征图,改变了通道数但是没有改变分辨率,在无采样模块输出的18*64*64的特征图输入第二常规模块后,第二常规模块输出维度不变(通道数和分辨率均不变)的18*64*64的特征图。
由图2可知,经过下采样2倍,获得36*32*32的特征图,减少了分辨率,并输入与之连接的第二常规模块;经过下采样4倍,获得72*16*16的特征图,进一步减少了分辨率,并输入与之连接的第二常规模块;经过下采样8倍,获得144*8*8的特征图,进一步减少了分辨率,并输入与之连接的第二常规模块。
很明显,每个第二常规模块输出一个尺度的特征图,且各个第二常规模块输出的特征图的通道数有所区别,分辨率有所区别,从而获得多尺度特征图,所述多尺度包括多通道和/或多分辨率,在本实施例中,多尺度包括多通道和多分辨率。
所述多尺度神经网络模型还包括组合模块,如图2所示,组合模块有多个,组合模块用于基于权重参数加权组合所述多尺度特征图中的至少两个以获取新特征图。即组合模块用于接收不同通道数和不同分辨率大小的特征图,通过采用合适的采样模块,生成通道数和分辨率大小一致的特征图。为了生成通道数和分辨率大小一致的特征图,在组合的时候,引入一组可学习的权重参数,该权重可以对第i个第二常规模块下的第j个输出特征图进行加权,作为当前特征图对整个多尺度神经网络模型的贡献指标,从而可以对不同特征图进行像素级加权求和,以组合出包含不同维度信息的中间特征图。
具体地,组合模块1的输入为无采样模块输出的特征图(18*64*64)、上采样模块输出的特征图,该无采样模块的输入为第一行的无采样,该上采样模块的输入分别为第二行的下采样2倍的输出(32*32)、第三行的下采样4倍的输出(16*16))和第四行的下采样8倍的输出(8*8),从而全部采样到18*64*64,生成通道数和分辨率大小一致的中间新特征图18*64*64。
同理,组合模块2的输入为无采样模块的输出(36*32*32)、下采样模块的输出和上采样模块的输出;该无采样模块为第二行的无采样,为32*32,该下采样模块的输入为第一行的无采样的输出64*64;该上采样模块的输入为第三行的下采样4倍的输出32*32和第四行的下采样8倍的输出8*8,从而全部采样到36*32*32,生成通道数和分辨率大小一致的中间新特征图36*32*32。
同理,获得组合模块3的输出为72*16*16的中间新特征图,组合模块4的输出为144*8*8的中间新特征图。
并且,在各个组合模块组合的阶段,引入一组可学习的权重参数,该权重可以对第i个第二常规模块下的第j个输出特征图进行加权,作为当前特征图对整个多尺度神经网络模型的贡献指标,可以基于权重参数对不同的中间新特征图进行像素级加权求和,从而使得各个组合模块输出包含不同维度的新特征图,可以理解的是,组合模块实质输出的是中间新特征图。
并且,将组合模块1-4的操作重复8次,从而获得各个组合模块输出的新特征图。
所述多尺度网络模型还包括输出模块,用于融合多个所述组合模块输出的中间新特征图。
所述预测模块,还用于对所述中间新特征图进行人脸关键点预测,以获取第一人脸关键点预测图像。
其中,输出模块主要负责对不同维度信息的特征图进行特征融合,可以通过上采样模块先将所有的中间新特征图转换为64*64的分辨率,然后通过拼接操作合并所有中间新特征图的通道。预测模块包括一个1*1卷积层,经过预测模块的1*1卷积层将通道数压缩为N个,每个通道的特征图代表当前特点关键点的预测概率图,最后选取每个特征图的最大概率值的像素点,可以得到N个人脸关键点的坐标。比如,N=68,代表68个关键点,最后输出的第一人脸关键点预测图像为68*64*64,其中,64*64代表一个关键点的热度图,也叫预测概率图,把64*64中数值最大的坐标点作为关键点。
S102:利用损失函数计算所述第一人脸关键点预测图像和所述第一样本图像的真实关键点图像之间的损失,对所述多尺度神经网络模型进行迭代训练,直至收敛,得到多尺度网络模型。
具体地,所述损失函数包括第一损失和第二损失,用公式1表示:
其中,L表示损失函数,LMSE表示第一损失,为第一人脸关键点预测图像和第一样本图像的真实关键点图像之间的误差,该误差为均方误差(Mean Squared Error);表示第二损失,表示正则化的权重,表示权重参数。
其中,在第一阶段中,使用Adam(Adaptive Moment Estimation,自适应矩估计)优化器(参数为Ir=2*10-3,beta1=0.5,beta2=0.999),在批次大小为16的训练集上对多尺度神经网络模型进行迭代训练。第一阶段用于更新和优化权重参数。
在第二阶段,使用Adam优化器(参数为Ir=1*10-4,momentum=0.9,weightdecay=4*10-5)对多尺度神经网络模型进行迭代训练。第二阶段用于更新网络模型参数。
本申请的实施例,在训练多尺度网络模型的时候,将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,通过多尺度神经网络模型的特征提取模块提取多尺度特征图,组合模块基于权重参数加权组合多尺度特征图中的至少两个,预测模型对组合模块输出的新特征图进行人脸关键点预测,实现多尺度特征图的动态组合,获得更具识别能力的特征表达,获得的多尺度网络模型保证较好的检测性能上限,利于提高人脸关键点的精确定位。
并且,利用损失函数计算第一人脸关键点预测图像和第一样本图像的真实关键点图像之间的损失,损失函数包括的第二损失为与各所述权重参数绝对值之和的乘积,为正则化的权重,通过对组合模块组合多尺度特征图时的权重正则化,能够在训练过程对权重进行约束,得到的新特征图满足稀疏化,从而实现训练过程中的剪枝状态,能够降低网络模型的计算量,减少网络内存占用且加快计算速度,具有更粗粒度更高效的特点。
在其中一些实施方式中,为了获得轻量级的网络模型,可以训练多尺度网络模型的过程,对多尺度网络神经网络进行剪枝,因此,所述方法还可以包括:
具体地,可以预先设置一个第一剪枝阈值,为0.002,将多尺度网络模型的各所述权重参数中小于第一剪枝阈值的权重参数置为0,从而能够将小于第一剪枝阈值的权重参数对应的操作删除,获得一个第一轻量级网络模型。且获得的第一轻量级网络模型的参数量为0.86M,浮点计算量为0.66G,如图3所示,在训练获得多尺度网络模型并剪枝操作后,删除了大量的特征图采样操作。
本申请的多尺度网络模型,保证了较好的检测性能上限,再通过对权重参数稀疏化约束,然后剪枝获得第一轻量级网络模型,能够缩减网络的大小,该第一轻量级网络模型可以用于人脸关键点检测方法,通过剪枝,可以减少网络内存占用和加速计算。
在一些实施方式中,为了进一步实现对图像中的人脸关键点的精确定位,所述方法还可以包括:
将所述多尺度网络模型作为第一教师模型,且将第二样本图像输入所述多尺度网络模型,获得第二人脸关键点预测图像作为软标签;
将所述第二样本图像输入所述第一轻量级网络模型,获得第三人脸关键点预测图像;
计算所述第二人脸关键点预测图像和所述第三人脸关键点预测图像之间的损失,对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第二轻量级网络模型。
具体地,根据知识蒸馏与迁移学习在模型优化中的应用可以得知,由于未剪枝前的多尺度网络模型属于大模型,拥有良好的性能和泛化能力,剪枝后获得的第一轻量级网络模型属于小模型,网络规模较小,表达能力有限。因此,在知识蒸馏的时候,可以将多尺度网络模型作为教师模型,利用教师模型学习到的知识去“指导”小模型,使得小模型具有与大模型相当的性能,但是参数数量大幅降低,从而实现模型压缩与加速。
因此,如图4所示,将所述多尺度网络模型作为第一教师模型,且将第二样本图像输入所述第一教师模型,获得第二人脸关键点预测图像作为软标签;然后,将第二样本图像输入所述第一轻量级网络模型,获得第三人脸关键点预测图像,第一轻量级网络模型作为学生模型,计算所述第二人脸关键点预测图像和所述第三人脸关键点预测图像之间的损失,对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第二轻量级网络模型。其中,第二样本图像与第一样本图像类似,在此不再赘述。
进一步地,在训练获得第二轻量级网络模型的时候,第一轻量级网络模型会继承之前的权重参数和网络模型参数,然后利用Adam优化器(参数为Ir=1*10-4,momentum=0.9,weightdecay=4*10-5),在批次大小为16的训练集上对第一轻量级网络模型进行迭代训练,迭代次数可以为60次,其中,学习率在第40轮和第50轮的时候衰减10倍。在迭代60轮以后,模型收敛,得到第二轻量级网络模型,从而完成对第一轻量级网络模型的知识蒸馏损失学习。
本实施例中,获得的第二轻量级网络模型,同样可以用于人脸关键点检测方法,并且,由于采用知识蒸馏的方式,能够实现模型的压缩与加速,且具有多尺度网络模型的性能,便于精确定位人脸关键点。
在其中一些实施例中,本申请还提出一种对偶蒸馏方式,对偶蒸馏是一种在线蒸馏方法,只需要一个小模型,不需要依赖大模型训练,通过联合训练小模型(第一轻量级网络模型)与它的对偶网络(具有相同的解空间),使它们互相学习彼此的输出分布,从而获得比单一网络训练更优的性能,因此,所述方法还可以包括:
获取所述第一轻量级网络模型的第一对偶网络模型;
将第三样本图像输入所述第一轻量级网络模型,获得第四人脸关键点预测图像;
将第三样本图像输入所述第一对偶网络模型,获得第五人脸关键点预测图像;
计算所述第四人脸关键点预测图像和所述第五人脸关键点预测图像之间的第一对偶损失,以及计算所述第五人脸关键点预测图像和所述第四人脸关键点预测图像之间的第二对偶损失;
利用所述第一对偶损失对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第三轻量级网络模型;
利用所述第二对偶损失对所述第一对偶网络模型进行迭代训练,直至收敛,得到第四轻量级网络模型。
具体地,如图5所示,在对偶蒸馏的时候,小模型为第一轻量级网络模型,需要获得它的第一对偶网络模型,第一对偶网络模型与第一轻量级网络模型具有相同的解空间,然后,将第三样本图像输入所述第一轻量级网络模型,获得第四人脸关键点预测图像,且将所述第三样本图像输入所述对偶网络模型,获得第五人脸关键点预测图像,第四人脸关键点预测图像和第五人脸关键点预测图像分别为第一轻量级网络模型与其对偶网络模型的输出。接着,计算所述第四人脸关键点预测图像和所述第五人脸关键点预测图像之间的第一对偶损失,以及计算所述第五人脸关键点预测图像和所述第四人脸关键点预测图像之间的第二对偶损失;利用第一对偶损失对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第三轻量级网络模型;利用第二对偶损失对所述第一对偶网络模型进行迭代训练,直至收敛,得到第四轻量级网络模型。从而实现两个相同结构的轻量级网络模型的彼此输出分布的学习。
其中,第三样本图像与第一样本图像和第二样本图像类似,在此不再赘述。
在本实施例中,获得的第三轻量级网络模型和第四轻量级网络模型,都可以用于人脸关键点检测,并且,由于第三轻量级网络模型和第四轻量级网络模型属于第一轻量级网络模型与其对偶网络模型的相互学习结果,在人脸关键点检测时能够精确定位。
在其中一些实施方式中,还可以联合知识蒸馏和对偶蒸馏获得轻量级网络模型,以精确定位图像中的人脸关键点。因此,所述方法还可以包括:
获取所述第一轻量级网络模型的第二对偶网络模型;
将所述多尺度网络模型作为第二教师模型,且将第四样本图像输入所述多尺度网络模型,获得第六人脸关键点预测图像作为软标签;
将所述第四样本图像输入所述第一轻量级网络模型,获得第七人脸关键点预测图像;
将所述第四样本图像输入所述第一轻量级网络模型的第二对偶网络模型,获得第八人脸关键点预测图像;
计算所述第七人脸关键点预测图像和所述第八人脸关键点预测图像之间的第一蒸馏损失,以及计算所述第八人脸关键点预测图像和所述第七人脸关键点预测图像之间的第二蒸馏损失;
计算所述第六人脸关键点预测图像和所述第七人脸关键点预测图像之间的第三蒸馏损失,以及计算所述第六人脸关键点预测图像和所述第八人脸关键点预测图像之间的第四蒸馏损失;
计算所述第七人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第一误差损失,以及所述第八人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第二误差损失;
利用第一蒸馏损失、第三蒸馏损失和第一误差损失之和对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第六网络模型;
利用第二蒸馏损失、第四蒸馏损失和第二误差损失之和对所述第一轻量级网络模型的对偶网络模型进行迭代训练,直至收敛,得到第七网络模型。
具体地,如图6所示,还可以联合知识蒸馏和利用两个小模型之间的在线对偶蒸馏,获得另一个轻量级网络模型。获取第一轻量级网络模型的第二对偶网络模型,知识蒸馏类似于前述,将大模型的多尺度网络模型作为第二教师模型,将第四样本图像输入第二教师模型中,输出第六人脸关键点预测图像作为软标签,用来指导两个小模型的在线对偶蒸馏。第一蒸馏损失和第二蒸馏损失分别为第一轻量级网络模型与其对偶网络模型之间相互学习彼此的输出,第三蒸馏损失为第二教师模型对其学生模型(第一轻量级网络模型)的指导,第四蒸馏损失为第二教师模型对其学生模型(第一轻量级网络模型的第二对偶网络模型)的指导;第一误差损失为剪枝后的小模型(第一轻量级网络模型)与第四样本图像的真实关键点图像之间的均方误差损失,第二误差损失为钱之后的小模型的对偶模型(第二对偶网络模型)与第四样本的真实关键点图像之间的均方误差损失。其中,第四样本图像与第一样本图像、第二样本图像和第三样本图像类似,在此不再赘述。
利用所述第一蒸馏损失、所述第三蒸馏损失和所述第一误差损失之和对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第五轻量级网络模型,如公式2所示:
其中,L1表示第五轻量级网络模型的损失函数,LMSE1表示第一误差损失,LKD1表示第一蒸馏损失,LKD3表示第三蒸馏损失。
利用所述第二蒸馏损失、所述第四蒸馏损失和所述第二误差损失之和对所述第一轻量级网络模型的第二对偶网络模型进行迭代训练,直至收敛,得到第六轻量级网络模型,用公式3表示:
其中,L2表示第六轻量级网络模型的损失函数,LMSE2表示第二误差损失,LKD2表示第二蒸馏损失,LKD4表示第四蒸馏损失。
获得的第五轻量级网络模型和第六级轻量级网络模型,均可以作为人脸关键点的精确定位,并且,两种蒸馏方式互为补充,可以共同改善小网络性能。
在其中一些实施方式中,为了避免网络输出同质化,所述将所述第四样本图像输入所述第一轻量级网络模型,获得第七人脸关键点预测图像,可以包括:
对所述第一轻量级网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第七人脸关键点预测图像;
所述将所述第四样本图像输入所述第一轻量级网络模型的第二对偶网络模型,获得第八人脸关键点预测图像,可以包括:
对所述第一轻量级网络模型的第二对偶网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第八人脸关键点预测图像。
通过在联合蒸馏之前,对第一轻量级网络模型中的卷积层和其对偶网络模型的卷积层执行随机失活神经元dropout操作,能够避免输出的第七人脸关键点预测图像和第八人脸关键点预测图像同质化,便于第七人脸关键点预测图像和第八人脸关键点预测图像能够用于对偶蒸馏损失学习。
本申请实施例提供的训练多尺度网络模型的方法,可以获得稀疏化的权重参数的多尺度网络模型,能够降低网络模型的计算量,具有更粗粒度更高效的特点,多尺度网络模型能够实现多尺度特征图的动态组合,获得更具识别能力的特征表达,保证较好的检测性能上限,利于提高人脸关键点的精确定位;还可以对多尺度网络模型剪枝,获得第一轻量级网络模型,可以减少网络内存占用和加速计算;还可以采用知识蒸馏的方式,获得第二轻量级网络模型,实现模型的压缩与加速,且具有多尺度网络模型的性能,便于精确定位人脸关键点;还可以采用在线蒸馏的方式,获得的第三轻量级网络模型和第四轻量级网络模型,都可以用于人脸关键点检测,并且,由于第三轻量级网络模型和第四轻量级网络模型属于第一轻量级网络模型与其对偶网络模型的相互学习结果;还可以联合知识蒸馏和对偶蒸馏获得第五轻量级网络模型和第六级轻量级网络模型,两种蒸馏方式互为补充,可以共同改善小网络性能。
通过训练多尺度网络模型的方法获得的多尺度网络模型、第一轻量级网络模型、第二轻量级网络模型、第三轻量级网络模型、第四轻量级网络模型、第五轻量级网络模型和第六轻量级网络模型中的一种,既保证了较好的检测性能上限,对于小型设备的部署更加友好,消耗较少的内存和计算量就可以达到与大模型相当的精度,可实现对图像中人脸关键点的精确定位。
本申请还提供一种人脸关键点检测方法,如图7所示,所述方法包括:
S701:获取待测原始图像;
S702:将所述待测原始图像输入人脸关键点检测模型中,获得人脸关键点检测结果,所述人脸关键点检测模型采用如上述的训练多尺度网络模型方法获得的多尺度网络模型。
本申请的实施例,通过训练多尺度网络模型的方法获得的多尺度网络模型、第一轻量级网络模型、第二轻量级网络模型、第三轻量级网络模型、第四轻量级网络模型、第五轻量级网络模型和第六轻量级网络模型中的一种,既保证了较好的检测性能上限,对于小型设备的部署更加友好,消耗较少的内存和计算量就可以达到与大模型相当的精度,可实现对图像中人脸关键点的精确定位。
本申请实施例还提供了一种训练多尺度网络模型的装置,请参阅图6,其示出了本申请实施例提供的一种训练多尺度网络模型的装置的结构,该训练多尺度网络模型的装置800包括:
输入模块801,用于将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,所述多尺度神经网络模型包括特征提取模块、组合模块和预测模块,所述特征提取模块用于提取多尺度特征图,所述多尺度包括多通道和/或多分辨率,所述组合模块用于基于权重参数加权组合所述多尺度特征图中的至少两个以获取新特征图,所述预测模块用于对所述新特征图进行人脸关键点预测,以获取所述第一人脸关键点预测图像;
计算模块802,用于利用损失函数计算所述第一人脸关键点预测图像和所述第一样本图像的真实关键点图像之间的损失,对所述多尺度神经网络模型进行迭代训练,直至收敛,得到多尺度网络模型;
本申请的实施例,在训练多尺度网络模型的时候,将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,通过多尺度神经网络模型的特征提取模块提取多尺度特征图,组合模块基于权重参数加权组合多尺度特征图中的至少两个,预测模型对组合模块输出的新特征图进行人脸关键点预测,实现多尺度特征图的动态组合,获得更具识别能力的特征表达,获得的多尺度网络模型保证较好的检测性能上限,利于提高人脸关键点的精确定位。
并且,利用损失函数计算第一人脸关键点预测图像和第一样本图像的真实关键点图像之间的损失,损失函数包括的第二损失为与各所述权重参数绝对值之和的乘积,为正则化的权重,通过对组合模块组合多尺度特征图时的权重正则化,能够在训练过程对权重进行约束,得到的新特征图满足稀疏化,从而实现训练过程中的剪枝状态,能够降低网络模型的计算量,减少网络内存占用且加快计算速度,具有更粗粒度更高效的特点。
在一些实施例中,训练多尺度网络模型的装置800还包括剪枝模块803,用于:
将所述多尺度网络模型的各所述权重参数中小于第一剪枝阈值的权重参数置为0,以获得第一轻量级网络模型。
在一些实施例中,训练多尺度网络模型的装置800还包括知识蒸馏模块804,用于:
将所述多尺度网络模型作为第一教师模型,且将第二样本图像输入所述多尺度网络模型,获得第二人脸关键点预测图像作为软标签;
将所述第二样本图像输入所述第一轻量级网络模型,获得第三人脸关键点预测图像;
计算所述第二人脸关键点预测图像和所述第三人脸关键点预测图像之间的损失,对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第二轻量级网络模型。
在一些实施例中,训练多尺度网络模型的装置800还包括对偶蒸馏模块805,用于:
获取所述第一轻量级网络模型的第一对偶网络模型;
将第三样本图像输入所述第一轻量级网络模型,获得第四人脸关键点预测图像;
将所述第三样本图像输入所述第一对偶网络模型,获得第五人脸关键点预测图像;
计算所述第四人脸关键点预测图像和所述第五人脸关键点预测图像之间的第一对偶损失,以及计算所述第五人脸关键点预测图像和所述第四人脸关键点预测图像之间的第二对偶损失;
利用所述第一对偶损失对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第三轻量级网络模型;
利用所述第二对偶损失对所述第一对偶网络模型进行迭代训练,直至收敛,得到第四轻量级网络模型。
在一些实施例中,训练多尺度网络模型的装置800还包括联合蒸馏模块806,用于:
获取所述第一轻量级网络模型的第二对偶网络模型;
将所述多尺度网络模型作为第二教师模型,且将第四样本图像输入所述多尺度网络模型,获得第六人脸关键点预测图像作为软标签;
将所述第四样本图像输入所述第一轻量级网络模型,获得第七人脸关键点预测图像;
将所述第四样本图像输入所述第二对偶网络模型,获得第八人脸关键点预测图像;
计算所述第七人脸关键点预测图像和所述第八人脸关键点预测图像之间的第一蒸馏损失,以及计算所述第八人脸关键点预测图像和所述第七人脸关键点预测图像之间的第二蒸馏损失;
计算所述第六人脸关键点预测图像和所述第七人脸关键点预测图像之间的第三蒸馏损失,以及计算所述第六人脸关键点预测图像和所述第八人脸关键点预测图像之间的第四蒸馏损失;
计算所述第七人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第一误差损失,以及所述第八人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第二误差损失;
利用所述第一蒸馏损失、所述第三蒸馏损失和所述第一误差损失之和对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第五轻量级网络模型;
利用所述第二蒸馏损失、所述第四蒸馏损失和所述第二误差损失之和对所述第一轻量级网络模型的第二对偶网络模型进行迭代训练,直至收敛,得到第六轻量级网络模型。
在一些实施例中,联合蒸馏模块806,还用于:
对所述第一轻量级网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第七人脸关键点预测图像;
对所述第一轻量级网络模型的第二对偶网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第八人脸关键点预测图像。
在一些实施例中,所述特征提取模块包括输入模块,至少一个第一常规模块、至少两个采样模块和至少两个第二常规模块;
所述输入模块包括至少两个卷积层,所述卷积层包括第一卷积操作、第一批标准化操作及第一Relu激活操作,用于对所述第一样本图像进行特征编码以及降低分辨率;
所述第一常规模块和所述第二常规模块均包括至少两个卷积层,每个卷积层包括第二卷积操作、第二批标准化操作及第二Relu激活操作,所述第一常规模块用于对所述输入模块输出的特征图进行连续编码;
所述至少两个采样模块,用于对所述第一常规模块输出的特征图进行多种方式采样,获得多个通道和多个分辨率的特征图;
所述第二常规模块用于将所述采样模块输出的特征图进行连续编码,所述至少两个所述第二常规模块输出所述多尺度特征图。
在一些实施例中,所述组合模块还用于获取第i个所述常规模块输出的第j个第二新特征图后,将第j个第二新特征图乘以一个对应的权重参数并进行求和,获得中间新特征图;
所述多尺度网络模型还包括输出模块,用于融合多个所述组合模块输出的中间新特征图;
所述预测模块,还用于对所述中间新特征图进行人脸关键点预测,以获取第一人脸关键点预测图像。
本申请实施例还提供了一种人脸关键点检测装置,请参阅图9,其示出了本申请实施例提供的一种人脸关键点检测装置的结构,该人脸关键点检测装置900包括:
待测图像获取模块901,用于获取待测原始图像;
输出模块902,用于将所述待测原始图像输入人脸关键点检测模型中,获得人脸关键点检测结果,所述人脸关键点检测模型采用如第一方面的方法获得的多尺度网络模型、第一轻量级网络模型、第二轻量级网络模型、第三轻量级网络模型、第四轻量级网络模型、第五轻量级网络模型和第六轻量级网络模型中的一种。
本申请的实施例,通过训练多尺度网络模型的方法获得的多尺度网络模型、第一轻量级网络模型、第二轻量级网络模型、第三轻量级网络模型、第四轻量级网络模型、第五轻量级网络模型和第六轻量级网络模型中的一种,既保证了较好的检测性能上限,对于小型设备的部署更加友好,消耗较少的内存和计算量就可以达到与大模型相当的精度,可实现对图像中人脸关键点的精确定位。
需要说明的是,上述装置可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在装置实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
图10为电子设备的一个实施例中控制器的硬件结构示意图,如图10所示,控制器包括:
一个或多个处理器51、存储器52。图10中以一个处理器51、一个存储器52为例。
处理器51、存储器52可以通过总线或者其他方式连接,图10中以通过总线连接为例。
存储器52作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的人脸关键点检测方法对应的程序指令/模块(例如,附图6-7所示的输入模块801、计算模块802、剪枝模块803、知识蒸馏模块804、对偶蒸馏模块805、联合蒸馏模块806、待测图像获取模块901、输出模块902)。处理器51通过运行存储在存储器52中的非易失性软件程序、指令以及模块,从而执行控制器的各种功能应用以及数据处理,即实现上述方法实施例的人脸关键点检测方法。
存储器52可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据人员进出检测装置的使用所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器52可选包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器52中,当被所述一个或者多个处理器51执行时,执行上述任意方法实施例中的人脸关键点检测方法,例如,执行以上描述的图1中的方法步骤S101至步骤S102,图7中的方法步骤S701至步骤S702;实现图8中的模块801-806及图9中的模块901-902的功能。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图10中的一个处理器51,可使得上述一个或多个处理器可执行上述任意方法实施例中的人脸关键点检测方法,例如,执行以上描述的图1中的方法步骤S101至步骤S102,图7中的方法步骤S701至步骤S702;实现图8中的模块801-806及图9中的模块901-902的功能。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施例的描述,本领域普通技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory, ROM)或随机存储记忆体(RandomAccessMemory, RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (11)
1.一种训练多尺度网络模型的方法,其特征在于,所述方法包括:
将第一样本图像输入多尺度神经网络模型,获得第一人脸关键点预测图像,所述多尺度神经网络模型包括特征提取模块、组合模块和预测模块,所述特征提取模块用于提取多尺度特征图,所述多尺度包括多通道和/或多分辨率,所述组合模块用于基于权重参数加权组合所述多尺度特征图中的至少两个以获取新特征图,所述预测模块用于对所述新特征图进行人脸关键点预测,以获取所述第一人脸关键点预测图像;
利用损失函数计算所述第一人脸关键点预测图像和所述第一样本图像的真实关键点图像之间的损失,对所述多尺度神经网络模型进行迭代训练,直至收敛,得到多尺度网络模型;
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述多尺度网络模型的各所述权重参数中小于第一剪枝阈值的权重参数置为0,以获得第一轻量级网络模型。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将所述多尺度网络模型作为第一教师模型,且将第二样本图像输入所述多尺度网络模型,获得第二人脸关键点预测图像作为软标签;
将所述第二样本图像输入所述第一轻量级网络模型,获得第三人脸关键点预测图像;
计算所述第二人脸关键点预测图像和所述第三人脸关键点预测图像之间的损失,对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第二轻量级网络模型。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述第一轻量级网络模型的第一对偶网络模型;
将第三样本图像输入所述第一轻量级网络模型,获得第四人脸关键点预测图像;
将所述第三样本图像输入所述第一对偶网络模型,获得第五人脸关键点预测图像;
计算所述第四人脸关键点预测图像和所述第五人脸关键点预测图像之间的第一对偶损失,以及计算所述第五人脸关键点预测图像和所述第四人脸关键点预测图像之间的第二对偶损失;
利用所述第一对偶损失对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第三轻量级网络模型;
利用所述第二对偶损失对所述第一对偶网络模型进行迭代训练,直至收敛,得到第四轻量级网络模型。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述第一轻量级网络模型的第二对偶网络模型;
将所述多尺度网络模型作为第二教师模型,且将第四样本图像输入所述多尺度网络模型,获得第六人脸关键点预测图像作为软标签;
将所述第四样本图像输入所述第一轻量级网络模型,获得第七人脸关键点预测图像;
将所述第四样本图像输入所述第二对偶网络模型,获得第八人脸关键点预测图像;
计算所述第七人脸关键点预测图像和所述第八人脸关键点预测图像之间的第一蒸馏损失,以及计算所述第八人脸关键点预测图像和所述第七人脸关键点预测图像之间的第二蒸馏损失;
计算所述第六人脸关键点预测图像和所述第七人脸关键点预测图像之间的第三蒸馏损失,以及计算所述第六人脸关键点预测图像和所述第八人脸关键点预测图像之间的第四蒸馏损失;
计算所述第七人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第一误差损失,以及所述第八人脸关键点预测图像和所述第四样本图像的真实关键点图像之间的第二误差损失;
利用所述第一蒸馏损失、所述第三蒸馏损失和所述第一误差损失之和对所述第一轻量级网络模型进行迭代训练,直至收敛,得到第五轻量级网络模型;
利用所述第二蒸馏损失、所述第四蒸馏损失和所述第二误差损失之和对所述第一轻量级网络模型的第二对偶网络模型进行迭代训练,直至收敛,得到第六轻量级网络模型。
6.根据权利要求5所述的方法,其特征在于,所述将所述第四样本图像输入所述第一轻量级网络模型,获得第七人脸关键点预测图像,包括:
对所述第一轻量级网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第七人脸关键点预测图像;
所述将所述第四样本图像输入所述第一轻量级网络模型的第二对偶网络模型,获得第八人脸关键点预测图像,包括:
对所述第一轻量级网络模型的第二对偶网络模型中的卷积层执行随机失活神经元操作,并输入所述第四样本图像,获得所述第八人脸关键点预测图像。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述特征提取模块包括输入模块,至少一个第一常规模块、至少两个采样模块和至少两个第二常规模块;
所述输入模块包括至少两个卷积层,所述卷积层包括第一卷积操作、第一批标准化操作及第一Relu激活操作,用于对所述第一样本图像进行特征编码以及降低分辨率;
所述第一常规模块和所述第二常规模块均包括至少两个卷积层,每个卷积层包括第二卷积操作、第二批标准化操作及第二Relu激活操作,所述第一常规模块用于对所述输入模块输出的特征图进行连续编码;
所述至少两个采样模块,用于对所述第一常规模块输出的特征图进行多种方式采样,获得多个通道和多个分辨率的特征图;
所述第二常规模块用于将所述采样模块输出的特征图进行连续编码,所述至少两个所述第二常规模块输出所述多尺度特征图。
8.根据权利要求7所述的方法,其特征在于,所述组合模块还用于获取第i个所述常规模块输出的第j个第二新特征图后,将第j个第二新特征图乘以一个对应的权重参数并进行求和,获得中间新特征图;
所述多尺度网络模型还包括输出模块,用于融合多个所述组合模块输出的中间新特征图;
所述预测模块,还用于对所述中间新特征图进行人脸关键点预测,以获取第一人脸关键点预测图像。
9.一种人脸关键点检测方法,其特征在于,所述方法包括:
获取待测原始图像;
将所述待测原始图像输入人脸关键点检测模型中,获得人脸关键点检测结果,所述人脸关键点检测模型采用如权利要求1-8任一项所述的方法获得的多尺度网络模型。
10.一种电子设备,其特征在于,包括存储器以及一个或多个处理器,所述一个或多个处理器用于执行存储在所述存储器中的一个或多个计算机程序,所述一个或多个处理器在执行所述一个或多个计算机程序时,使得所述电子设备实现如权利要求1-9任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211228821.1A CN115376195B (zh) | 2022-10-09 | 2022-10-09 | 训练多尺度网络模型的方法及人脸关键点检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211228821.1A CN115376195B (zh) | 2022-10-09 | 2022-10-09 | 训练多尺度网络模型的方法及人脸关键点检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115376195A true CN115376195A (zh) | 2022-11-22 |
CN115376195B CN115376195B (zh) | 2023-01-13 |
Family
ID=84073398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211228821.1A Active CN115376195B (zh) | 2022-10-09 | 2022-10-09 | 训练多尺度网络模型的方法及人脸关键点检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115376195B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115984640A (zh) * | 2022-11-28 | 2023-04-18 | 北京数美时代科技有限公司 | 一种基于组合蒸馏技术的目标检测方法、系统和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829959A (zh) * | 2018-12-25 | 2019-05-31 | 中国科学院自动化研究所 | 基于人脸解析的表情编辑方法及装置 |
CN111382714A (zh) * | 2020-03-13 | 2020-07-07 | Oppo广东移动通信有限公司 | 图像检测方法、装置、终端及存储介质 |
US20200265272A1 (en) * | 2019-02-19 | 2020-08-20 | Fujitsu Limited | Apparatus and method for training classification model and apparatus for performing classification by using classification model |
CN111767882A (zh) * | 2020-07-06 | 2020-10-13 | 江南大学 | 一种基于改进yolo模型的多模态行人检测方法 |
CN113221945A (zh) * | 2021-04-02 | 2021-08-06 | 浙江大学 | 基于口腔全景片和双重注意力模块的龋齿识别方法 |
-
2022
- 2022-10-09 CN CN202211228821.1A patent/CN115376195B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829959A (zh) * | 2018-12-25 | 2019-05-31 | 中国科学院自动化研究所 | 基于人脸解析的表情编辑方法及装置 |
US20200265272A1 (en) * | 2019-02-19 | 2020-08-20 | Fujitsu Limited | Apparatus and method for training classification model and apparatus for performing classification by using classification model |
CN111382714A (zh) * | 2020-03-13 | 2020-07-07 | Oppo广东移动通信有限公司 | 图像检测方法、装置、终端及存储介质 |
CN111767882A (zh) * | 2020-07-06 | 2020-10-13 | 江南大学 | 一种基于改进yolo模型的多模态行人检测方法 |
CN113221945A (zh) * | 2021-04-02 | 2021-08-06 | 浙江大学 | 基于口腔全景片和双重注意力模块的龋齿识别方法 |
Non-Patent Citations (2)
Title |
---|
HANYING XIONG ET AL.: "Real-time Efficient Facial Landmark Detection Algorithms", 《3RD INTERNATIONAL CONFERENCE ON ARITIFICIAL INTELLIGENCE PATTERN RECOGNITION》 * |
张世辉等: "基于深度学习利用特征图加权融合的目标检测方法", 《计量学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115984640A (zh) * | 2022-11-28 | 2023-04-18 | 北京数美时代科技有限公司 | 一种基于组合蒸馏技术的目标检测方法、系统和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115376195B (zh) | 2023-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111489358B (zh) | 一种基于深度学习的三维点云语义分割方法 | |
CN108664981B (zh) | 显著图像提取方法及装置 | |
CN111950453B (zh) | 一种基于选择性注意力机制的任意形状文本识别方法 | |
CN107229904B (zh) | 一种基于深度学习的目标检测与识别方法 | |
CN106547880B (zh) | 一种融合地理区域知识的多维度地理场景识别方法 | |
CN108108764B (zh) | 一种基于随机森林的视觉slam回环检测方法 | |
WO2020228446A1 (zh) | 模型训练方法、装置、终端及存储介质 | |
CN114255238A (zh) | 一种融合图像特征的三维点云场景分割方法及系统 | |
CN112560967B (zh) | 一种多源遥感图像分类方法、存储介质及计算设备 | |
CN113822284B (zh) | 一种基于边界注意力的rgbd图像语义分割方法 | |
CN110347857B (zh) | 基于强化学习的遥感影像的语义标注方法 | |
CN112288831A (zh) | 基于生成对抗网络的场景图像生成方法和装置 | |
CN112070768A (zh) | 基于Anchor-Free的实时实例分割方法 | |
CN114037640A (zh) | 图像生成方法及装置 | |
CN115018039A (zh) | 一种神经网络蒸馏方法、目标检测方法以及装置 | |
CN112084911A (zh) | 一种基于全局注意力的人脸特征点定位方法及系统 | |
CN115376195B (zh) | 训练多尺度网络模型的方法及人脸关键点检测方法 | |
CN111368637B (zh) | 一种基于多掩模卷积神经网络的搬运机器人识别目标方法 | |
CN116863194A (zh) | 一种足溃疡图像分类方法、系统、设备及介质 | |
CN113496148A (zh) | 一种多源数据融合方法及系统 | |
CN114648667A (zh) | 一种基于轻量化双线性cnn模型的鸟类图像细粒度识别方法 | |
CN114581789A (zh) | 一种高光谱图像分类方法及系统 | |
CN108428234B (zh) | 基于图像分割结果评价的交互式分割性能优化方法 | |
CN111783688B (zh) | 一种基于卷积神经网络的遥感图像场景分类方法 | |
CN116740362B (zh) | 一种基于注意力的轻量化非对称场景语义分割方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |