部位识别方法以及相关设备、装置与流程

文档序号:22614416发布日期:2020-10-23 19:13阅读:130来源:国知局
部位识别方法以及相关设备、装置与流程

本申请涉及信息技术领域,特别是涉及一种部位识别方法以及相关设备、装置。



背景技术:

随着信息技术的发展,诸如人脸等部位的识别在移动支付、安防安检、办公考勤等场景已经得到了广泛的应用。部位识别一般包括部位检测、活体检测、部位比对等,而由于假体(如打印人像、电子人像、立体面具等)会对系统安全产生影响,故其中又以活体检测最为关键。

目前,活体检测的其中一种方式是基于光流(opticalflow)来捕捉运动目标,以此来区分活体与假体。然而,使用诸如卢卡斯-卡纳德法等传统光流获取方式获得特征点的稀疏光流图,将对识别准确性造成影响,而使用传统光流获取获得稠密光流图,由于计算复杂度大,故将对识别实时性造成影响。有鉴于此,如何准确且实时地实现部位识别成为亟待解决的问题。



技术实现要素:

本申请主要解决的技术问题是提供一种部位识别方法以及相关设备、装置,能够准确且实时地实现部位识别。

为了解决上述问题,本申请第一方面提供了一种部位识别方法,包括:获取摄像器件拍摄到的多帧原始图像;对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域;利用多帧原始图像组成为至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理数据,其中,每组原始图像包括至少两帧原始图像;利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图;利用部位光流图,确定待识别部位是否为活体部位。

为了解决上述问题,本申请第二方面提供了一种电子设备,包括相互耦接的存储器和处理器,存储器存储有程序指令,处理器用于执行程序指令以实现上述第一方面中的部位识别方法。

为了解决上述问题,本申请第三方面提供了一种存储装置,存储有能够被处理器运行的程序指令,程序指令用于实现上述第一方面中的部位识别方法。

上述方案,通过获取摄像器件拍摄到的多帧原始图像,并对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域,从而利用多帧原始图像组成至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理图像,且每组原始图像包括至少两帧原始图像,进而利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图,故能够免于复杂计算而快速获取稠密光流图,进而利用部位光流图,能够准确且实时地确定待识别部位是否为活体部位。

附图说明

图1是本申请部位识别方法一实施例的流程示意图;

图2是图1中光流图生成网络的训练方法一实施例的流程示意图;

图3是图1中光流图生成网络一实施例的框架示意图;

图4是图1步骤s14一实施例的流程示意图;

图5是特征融合子网络一实施例的框架示意图;

图6是图1中步骤s15一实施例的流程示意图;

图7是目标区域中的关键点一实施例的示意图;

图8是本申请部位识别装置一实施例的框架示意图;

图9是本申请电子设备一实施例的框架示意图;

图10是存储装置一实施例的框架示意图。

具体实施方式

下面结合说明书附图,对本申请实施例的方案进行详细说明。

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。

本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。

请参阅图1,图1是本申请部位识别方法一实施例的流程示意图。具体而言,可以包括如下步骤:

步骤s11:获取摄像器件拍摄到的多帧原始图像。

摄像器件可以根据实际应用场景而进行设置,例如,在移动支付场景中,摄像器件可以为能够运行支付程序(app)的移动终端(如,手机、平板电脑等)、自助结账机等;在安防安检场景中,摄像器件可以为监控相机等;在办公考勤场景中,摄像器件可以为考勤机、门禁机等;在楼宇访客场景中,摄像器件可以为监控相机、门禁机等,具体可以根据应用场景进行设置,在此不再一一举例。

获取到的多帧原始图像可以为两帧原始图像、三帧原始图像、四帧原始图像等等,在此不做限定。在一个实施场景中,可以预先设定所需获取的原始图像的帧数,当未获取到设定帧数的原始图像时,可以输出提示信息,以提示用户处于摄像器件的拍摄范围内,以便摄像器件获取到设定帧数的原始图像。

步骤s12:对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域。

在一个实施场景中,可以采用预先训练的网络模型对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域。以待识别部位是人脸为例,可以采用ssh(singlestageheadlessfacedetector)对多帧原始图像进行目标检测,得到每帧原始图像中人脸的目标区域,由于ssh具有尺度不相关性(scale-invariant),故可以仅以一幅原始图像即可检测出其中不同尺度的人脸,且利用ssh能够在保证检测精度的同时,还能够实现实时检测原始图像中的人脸。此外,还可以采用facer-cnn、mtcnn、faceness-net等网络模型对原始图像进行目标检测,得到每帧原始图像中人脸的目标区域。当待识别部位为其他部位时,可以以此类推,在此不再一一举例。

步骤s13:利用多帧原始图像组成为至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理数据。

每组原始图像包括至少两帧原始图像,例如,两帧原始图像、三帧原始图像等等。具体地,每组原始图像可以包含相邻两帧原始图像,即摄像器件在相邻时刻拍摄到的两帧原始图像。

每组原始图像中目标区域的图像数据可以组成一组待处理数据,以便后续处理。

步骤s14:利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图。

在一个实施场景中,待处理数据的组数可以是一组,故可以利用经训练的光流图生成网络对一组待处理数据进行处理,得到与该组待处理数据对应的部位光流图。在另一个实施场景中,待处理数据的组数还可以是多组(例如,两组、三组等),故可以利用经训练的光流图生成网络对多组待处理数据进行处理,得到与每组待处理数据对应的部位光流图,在此不做限定。

仍以待识别部位是人脸为例,可以利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的人脸光流图。

在一个实施场景中,在对至少一组待处理数据进行处理之前,还可以获取至少一组样本数据及其对应的样本光流图,且每组样本数据及其对应的样本光流图是利用一对相邻的样本图像中的目标区域的图像数据得到的,样本光流图为稠密光流图,不同于稀疏光流只针对图像上若干个特征点,稠密光流计算图像上所有点的光流,从而利用光流图生成网络对每组样本数据进行处理,得到预测光流图,并利于预测光流图和样本光流图,得到光流图生成网络的损失值,进而利用损失值调整光流图生成网络的参数。在一个具体的实施场景中,当满足预设训练结束条件时,可以结束对光流图生成网络的训练,预设训练结束条件具体可以包括以下至少一者:损失值小于一预设损失阈值,训练次数到达预设次数阈值。在另一个具体的实施场景中,可以采用以下至少一者方式对光流图生成网络的参数进行调整:随机梯度下降(stochasticgradientdescent,sgd)、批量梯度下降(batchgradientdescent,bgd)、小批量梯度下降(mini-batchgradientdescent,mbgd),其中,随机梯度下降是指在每一次迭代时,使用一个样本来进行参数更新;小批量梯度下降是指在每一次迭代时,使用一批样本来进行参数更新,在此不再赘述。

步骤s15:利用部位光流图,确定待识别部位是否为活体部位。

在一个实施场景中,当利用一组待处理数据,得到一幅对应的部位光流图时,可以对该幅部位光流图进行分析,确定待识别部位是否为活体部位。在另一个实施场景中,当利用多组待处理数据,得到多幅对应的部位光流图时,可以对多幅部位光流图分别进行分析,并根据每幅部位光流图对应的分析结果,确定待识别部位是否为活体部位。在一个具体的实施场景中,具体可以统计为活体部位的分析结果的数量在全部分析结果的总数中所占的比例,若该比例大于一预设比例,则可以认为待识别部位为活体部位,从而能够避免一次误检而带来的识别错误,进而能够提高部位识别的鲁棒性。

在一个实施场景中,仍以待识别部位是人脸为例,可以利用部位光流图,统计人脸中眼睛附近的光流信息,并根据眼睛附近的光流信息,确定是否为活体人脸。在一个具体的实施场景中,可以统计眼睛附近的光流幅度,若统计得到的光流幅度满足预设幅度条件(例如,光流幅度的总和大于一预设幅度阈值),则可以确定为活体人脸,反之则可以确定为假体人脸。在另一个具体的实施场景中,还可以统计眼睛附近的光流方向,若统计得到的光流方向满足预设方向条件(例如,光流方向分布情况符合一预设方向规律),则可以确定为活体人脸,在此不做限定。当待识别部位为其他部位时,可以以此类推,在此不再一一举例。

上述方案,通过获取摄像器件拍摄到的多帧原始图像,并对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域,从而利用多帧原始图像组成至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理图像,且每组原始图像包括至少两帧原始图像,进而利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图,故能够免于复杂计算而快速获取稠密光流图,进而利用部位光流图,能够准确且实时地确定待识别部位是否为活体部位。

请参阅图2,图2是图1中光流图生成网络的训练方法一实施例的流程示意图,具体而言,可以包括如下步骤:

步骤s21:获取至少一组样本数据及其对应的样本光流图。

每组样本数据及其对应的样本光流图是利用一对相邻的样本图像中目标区域的图像数据得到的。在一个具体的实施场景中,可以对相邻的样本图像进行目标检测,得到每帧样本图像中目标部位的目标区域,并将目标区域的图像数据作为一组样本数据;或者,样本图像中标注有与目标部位对应的目标区域,从而直接将目标区域的图像数据作为一组样本数据。在另一个具体的实施场景中,可以利用gunnarfarneback算法等方式对样本数据进行光流提取,得到稠密的样本光流图。gunnarfarneback稠密光流算法则是基于前后两帧图像中所有像素点的移动估算算法,通过前后两帧图像中所有像素点的位移矢量来实现光流跟踪。

步骤s22:利用光流图生成网络对每组样本数据进行处理,得到对应于光流图生成网络的不同网络深度处的多个预测光流图。

请结合参阅图3,图3是图1中光流图生成网络一实施例的框架示意图。如图3所示,光流图生成网络可以包括编码器和解码器,编码器主要用于对样本数据进行特征提取,以对样本数据进行编码处理,解码器主要用于对提取到的数据进行反向重构,以对编码处理得到的数据进行解码处理,从而得到对应的预测光流图。在一个实施场景中,某一样本图像的目标区域的图像数据的尺寸为w*h,图像数据中每一像素点的通道为3(如,红绿蓝),与其相邻的样本图像的目标区域的图像数据的尺寸为w*h,图像数据中每一像素点的通道为3(如,红绿蓝),故对每组样本数据进行拼接处理,能够得到尺寸为w*h,且每一像素点的通道为6的拼接数据,从而光流图生成网络对拼接数据进行编码、解码等处理,得到对应的预测光流图。在另一个实施场景中,解码器可以包括位于不同网络深度的反卷积层,用于解码得到不同尺度的预测光流图。反卷积(deconvolution)分为转置卷积(transposedconvolution)和微步卷积(fractionallystridedconvolution),转置卷积按照一定的比例通过补零来扩大特征图像尺寸,并旋转卷积核,进行正向卷积;微步卷积在输入特征图像的单元之间插入若干个零,并将插入的零作为新的特征输入,并以一为步长进行特征提取。

步骤s23:分别利用多个预测光流图与样本光流图,得到多个损失值。

分别利用多个预测光流图和样本光流图之间的差异,能够得到光流图生成网络在不同网络深度处的损失值。

步骤s24:利用多个损失值,调整光流图生成网络的参数。

在一个实施场景中,为了加快网络的收敛速度,还可以利用多个损失值对应的预设权值对多个损失值进行加权处理,得到光流图生成网络的最终损失值,从而利用最终损失值,调整光流图生成网络的参数,且与多个损失值对应的预设权值的数值大小,以及多个损失值对应的网络深度之间为正相关关系或负相关关系。具体地,可以对应于不同的训练阶段,将多个损失值对应的预设权值设置为与网络深度为正相关关系,或负相关关系,例如,在训练初期,可以将多个损失值对应的预设权值设置为与网络深度为正相关关系,在训练后期,可以将将多个损失值对应的预设权值设置为与网络深度为负相关关系,在此不做限定。

区别于前述实施例,通过获取至少一组样本数据及其对应的样本光流图,且每组样本数据及其对应的样本光流图是利用一对相邻的样本图像中目标区域的图像数据得到的,并利用光流图生成网络对每组样本数据进行处理,得到对应于光流图生成网络的不同网络深度处的多个预测光流图,从而分别利用多个预测光流图与样本光流图,得到多个损失值,并利用多个损失值,调整光流图生成网络的参数,进而能够加速网络训练。

请参阅图4,图4是图1中步骤s14一实施例的流程示意图。具体可以包括如下步骤:

步骤s141:对每组待处理数据进行拼接处理,得到拼接数据,并对拼接数据进行特征提取,得到第一特征图。

具体地,可以将每组待处理数据中分属于两个原始图像的目标区域的图像数据中的对应像素点进行拼接,从而能够在通道维度上进行拼接,得到拼接数据。例如,某一原始图像的目标区域的图像数据的尺寸为w*h,图像数据中每一像素点的通道为3(如,红绿蓝),与其相邻的原始图像的目标区域的图像数据的尺寸为w*h,图像数据中每一像素点的通道为3(如,红绿蓝),故对每组待处理数据进行拼接处理,能够得到尺寸为w*h,且每一像素点的通道为6的拼接数据,其他场景可以以此类推,在此不再一一举例。

在一个实施场景中,如图3所示,光流图生成网络中可以包括特征提取子网络,从而可以利用特征提取子网络对拼接数据进行特征提取,得到第一特征图。在一个具体的实施场景中,特征提取子网络可以包含多个顺序连接的卷积层。在另一个具体的实施场景中,为了加深网络深度,从而有效提升深度特征,特征提取子网络中可以包括至少一个顺序连接的残差块(resblock)。

步骤s142:对第一特征图进行降维处理,得到至少一个第二特征图。

在一个实施场景中,可以以不同的降维尺度对第一特征图进行降维处理,得到不同尺度的第二特征图。

在另一个实施场景中,为了进一步扩展用于解码处理所使用的第三特征图中的全局信息,光流图生成网络还可以包括多个顺序连接的特征融合子网络,并对于每一特征融合子网络,将位于其之前且相邻的子网络处理得到的特征图,作为第一特征图,例如,对于第一个特征融合子网络而言,可以将位于其之前且相邻的特征提取子网络处理得到的特征图,作为第一特征图;或者,对于第i个特征融合子网络而言,可以将第i-1个特征融合子网络处理得到的特征图,作为第一特征图,且i为不小于1的整数。在得到第一特征图之后,可以利用特征融合子网络中至少一个池化层对第一特征图进行池化处理,得到至少一个第二特征图,请结合参阅图5,图5是特征融合子网络一实施例的框架示意图。如图5所示,特征融合子网络中包括4个池化层,具体地,可以分别为64×64的平均池化块、32×32的平均池化块、16×16的平均池化块和8×8的平均池化块,此外,各平均池化块后还可以分别连接一1×1的卷积,并各自连接至一上采样处理模块。

步骤s143:将第一特征图和至少一个第二特征图进行融合处理,得到第三特征图。

具体地,可以将第一特征图和至少一个第二特征图进行拼接,从而得到第三特征图,以使得第三特征图能够整合全局上下文信息。

在一个实施场景中,为了进一步整合全局上下文信息,对于多个特征融合子网络中的每一个特征融合子网络,获取位于其之前第二个特征融合子网络处理得到的第三特征图,并将第一特征图、至少一个第二特征图以及获取到的第三特征图进行拼接,处理得到第三特征图。请继续结合参阅图5,如图5所示,将第一特征图和其他特征融合子网络(如位于其之前第二个特征融合子网络)处理得到的第三特征图进行下采样,并和上采样之后的至少一个第二特征图进行拼接处理,得到当前的特征融合子网络处理得到的第三特征图,进而能够使得最后一个特征融合子网络处理得到的第三特征图能够尽可能地整合全局上下文信息。

步骤s144:将第三特征图进行解码处理,得到部位光流图。

在一个实施场景中,在得到第三特征图之后,还可以利用编码器中的多个卷积层对第三特征图进行特征提取,得到编码数据,并利用光流图生成网络中的解码器对编码数据进行解码处理,得到部位光流图。请结合参阅图3,光流图生成网络可以包含上述特征提取子网络、特征融合子网络、多个卷积层。

区别于前述实施例,通过对每组待处理数据进行拼接处理,得到拼接数据,并对拼接数据进行特征提取,得到第一特征图,并对第一特征图进行降维处理,得到至少一个第二特征图,从而将第一特征图和至少一个第二特征图进行融合处理,得到第三特征图,能够使第三特征图尽可能地整合全局上下文信息,从而将第三特征图进行解码处理,能够提高得到的部位光流图的准确性,进而能够有利于提高部位识别的准确性。

请参阅图6,图6是图1中步骤s15一实施例的流程示意图。具体地,图6是待识别部位为人脸时,利用部位光流图确定待识别部位是否为活体部位一实施例的流程示意图。具体而言,可以包括如下步骤:

步骤s151:比对眼部区域和眼周区域在人脸光流图中的光流幅度,得到第一比对分值。

眼部区域可以通过对目标区域进行眼部区域检测而得到,眼周区域可以通过对目标区域进行眼周区域检测而得到,且眼部区域的覆盖范围大于眼周区域的覆盖范围,例如,眼部区域可以包含眉毛区域、眼周上下和左右眼外围的一些皮肤区域。

在一个实施场景中,可以利用adaboost层叠型眼睛分类器对目标区域进行检测,得到眼部区域。adaboost是一种迭代算法,其核心思想是针对同一训练集训练不同的分类器(弱分类器),然后再把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。

在另一个实施场景中,可以对目标区域进行关键点检测,从而得到目标区域中的关键点,并利用与眼睛对应的关键点,确定目标区域中的眼周区域。在一个具体的实施场景中,请结合参阅图7,图7是目标区域中的关键点一实施例的示意图。关键点可以包括与脸部轮廓对应的关键点(即关键点1~17)、与眉毛对应的关键点(即关键点18~27)、与鼻子对应的关键点(即关键点28~36)、与眼睛对应的关键点(即关键点37~48)、与嘴对应的关键点(即关键点49~68)。在另一个具体的实施场景中,可以采用dlib、firebase等方式检测得到目标区域中的关键点。在又一个具体的实施场景中,可以将眼睛对应的关键点所围成的区域,作为眼周区域。

具体地,可以统计眼周区域中光流幅度满足预设幅度条件的目标像素点,并将目标像素点在眼部区域中的占比作为第一比对分值。在一个实施场景中,部位光流图中每一像素点的光流值为一包含光流幅度和光流方向的矢量,从而可以采用矢量的横向分量u和纵向分量v,通过下式分别得到光流幅度s和光流方向θ:

θ=tan-1(v/u)

在另一个实施场景中,预设幅度条件可以包括:光流幅度大于预设幅度阈值,则具体可以统计眼周区域光流幅度较大的目标像素点,并计算目标像素点在眼部区域中的占比,作为第一比对分值。

步骤s152:比对眼部区域和眼周区域在人脸光流图中的光流方向,得到第二比对分值。

具体地,可以统计目标区域中的关键点的光流方向的第一分布情况,并统计眼周区域中至少与眼睛对应的关键点的光流方向的第二分布情况,从而确定第一分布情况和第二分布情况的相似度,并将相似度作为第二比对分值。在一个实施场景中,上述第一分布情况和第二分布情况可以为光流方向直方图,具体地,可以将0至2π划分为12个区间,统计目标区域中的关键点的光流方向分别属于12个区间中的一个,从而得到第一分布情况,统计眼周区域中至少与眼睛对应的关键点的光流方向分别属于12个区间中的一个,从而得到第二分布情况。在另一个实施场景中,可以利用卡方校验、巴氏系数等方式确定第一分布情况和第二分布情况的相似度,作为第二比对分值。

上述步骤s151和步骤s152可以按照先后顺序执行,例如,先执行步骤s151,后执行步骤s152,或者,先执行步骤s152,后执行步骤s151,此外,上述步骤s151和步骤s152也可以同时执行,在此不做限定。

步骤s153:利用第一比对分值和第二比对分值,确定待识别人脸是否为活体人脸。

具体地,可以将第一比对分值和第二比对分值之和,作为待识别人脸的最终分值,若最终分值满足预设分值条件,则确定待识别人脸为活体人脸。在一个实施场景中,预设分值条件包括大于一预设分值阈值。此外,若最终分值不满足预设分值条件,则确定待识别人脸为假体人脸(例如,打印的人脸图像、电子人脸图像、立体面具等)。

区别于前述实施例,通过比对眼部区域和眼周区域在人脸光流图中的光流幅度,得到第一比对分值,并比对眼部区域和眼周区域在人脸光流图中的光流方向,得到第二比对分值,从而利用第一比对分值和第二比对分值,确定待识别人脸是否为活体人脸,能够同时利用光流幅度和光流方向确定是否为活体,进而能够提高识别的准确性。

请参阅图8,图8是本申请部位识别装置80一实施例的框架示意图。部位识别装置80包括图像获取模块81、目标检测模块82、数据获取模块83、光流生成模块84和活体确定模块85,图像获取模块81用于获取摄像器件拍摄到的多帧原始图像;目标检测模块82用于对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域;数据获取模块83用于利用多帧原始图像组成为至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理数据,其中,每组原始图像包括至少两帧原始图像;光流生成模块84用于利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图;活体确定模块85用于利用部位光流图,确定待识别部位是否为活体部位。

上述方案,通过获取摄像器件拍摄到的多帧原始图像,并对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域,从而利用多帧原始图像组成至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理图像,且每组原始图像包括至少两帧原始图像,进而利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图,故能够免于复杂计算而快速获取稠密光流图,进而利用部位光流图,能够准确且实时地确定待识别部位是否为活体部位。

在一些实施例中,每组原始图像包括相邻两帧原始图像,部位识别装置80包括样本获取模块,用于获取至少一组样本数据及其对应的样本光流图,其中,每组样本数据及其对应的样本光流图是利用一对相邻的样本图像中目标区域的图像数据得到的,部位识别装置80包括光流预测模块,用于利用光流图生成网络对每组样本数据进行处理,得到对应于光流图生成网络的不同网络深度处的多个预测光流图,部位识别装置80包括损失确定模块,用于分别利用多个预测光流图与样本光流图,得到多个损失值,部位识别装置80包括参数调整模块,用于利用多个损失值,调整光流图生成网络的参数。

区别于前述实施例,通过获取至少一组样本数据及其对应的样本光流图,且每组样本数据及其对应的样本光流图是利用一对相邻的样本图像中目标区域的图像数据得到的,并利用光流图生成网络对每组样本数据进行处理,得到对应于光流图生成网络的不同网络深度处的多个预测光流图,从而分别利用多个预测光流图与样本光流图,得到多个损失值,并利用多个损失值,调整光流图生成网络的参数,进而能够加速网络训练。

在一些实施例中,参数调整模块包括加权处理子模块,用于利用与多个损失值对应的预设权值对多个损失值进行加权处理,得到光流图生成网络的最终损失值,参数调整模块包括参数调整子模块,用于利用最终损失值,调整光流图生成网络的参数;其中,与多个损失值对应的预设权值的数值大小,以及多个损失值对应的网络深度之间为正相关关系或负相关关系。

区别于前述实施例,利用与多个损失值对应的预设权值对多个损失值进行加权处理,得到光流图生成网络的最终损失值,并利用最终损失值,调整光流图生成网络的参数,且与多个损失值对应的预设权值的数值大小,以及多个损失值对应的网络深度之间为正相关关系或负相关关系,能够有利于加快网络的收敛速度。

在一些实施例中,光流生成模块84包括第一特征图获取子模块,用于对每组待处理数据进行拼接处理,得到拼接数据,并对拼接数据进行特征提取,得到第一特征图,光流生成模块84包括第二特征图获取子模块,用于对第一特征图进行降维处理,得到至少一个第二特征图,光流生成模块84包括第三特征图获取子模块,用于将第一特征图和至少一个第二特征图进行融合处理,得到第三特征图,光流生成模块84解码处理子模块,用于将第三特征图进行解码处理,得到部位光流图。

区别于前述实施例,通过对每组待处理数据进行拼接处理,得到拼接数据,并对拼接数据进行特征提取,得到第一特征图,并对第一特征图进行降维处理,得到至少一个第二特征图,从而将第一特征图和至少一个第二特征图进行融合处理,得到第三特征图,能够使第三特征图尽可能地整合全局上下文信息,从而将第三特征图进行解码处理,能够提高得到的部位光流图的准确性,进而能够有利于提高部位识别的准确性。

在一些实施例中,第一特征图获取子模块具体用于利用光流图生成网络中的特征提取子网络对拼接数据进行特征提取,得到第一特征图;其中,特征提取子网络包括至少一个顺序连接的残差块。

区别于前述实施例,利用至少一个顺序连接的残差块进行特征提取,能够有利于加深网络深度,从而有效提升深度特征。

在一些实施例中,光流图生成网络还包括多个顺序连接的特征融合子网络,第二特征图获取子模块具体用于对于每一特征融合子网络,将位于其之前且相邻的子网络处理得到的特征图,作为第一特征图,并利用特征融合子网络中至少一个池化层对第一特征图进行池化处理,得到至少一个第二特征图,第三特征图获取子模块包括特征图获取单元,用于对于每一特征融合子网络,获取位于其之前第二个特征融合子网络处理得到的第三特征图,第三特征图获取子模块包括特征图拼接单元,用于将第一特征图、至少一个第二特征图和获取到的第三特征图进行拼接,处理得到第三特征图。

区别于前述实施例,光流图生成网络还包括多个顺序连接的特征融合子网络,并对于每一特征融合子网络,将位于其之前且相邻的子网络处理得到的特征图,作为第一特征图,并利用特征融合子网络中至少一个池化层对第一特征图进行池化处理,得到至少一个第二特征图,且对于每一特征融合子网络,获取位于其之前第二个特征融合子网络处理得到的第三特征图,并将第一特征图、至少一个第二特征图和获取到的第三特征图进行拼接,处理得到第三特征图,能够有利于使第三特征图尽可能地包含全局上下文信息,从而能够有利于提升部位光流图的准确性,进而能够有利于提升后续部位识别的准确性。

在一些实施例中,待识别部位为待识别人脸,部位光流图为人脸光流图,部位识别装置80还包括眼部检测模块,用于对目标区域进行眼部区域检测,得到目标区域中的眼部区域,部位识别装置80还包括眼周检测模块,用于对目标区域进行眼周区域检测,得到目标区域中的眼周区域,且眼部区域的覆盖范围大于眼周区域的覆盖范围,活体确定模块85包括第一比对分值获取子模块,用于比对眼部区域和眼周区域在人脸光流图中的光流幅度,得到第一比对分值,活体确定模块85包括第二比对分值获取子模块,用于比对眼部区域和眼周区域在人脸光流图中的光流方向,得到第二比对分值,活体确定模块85包括活体确定子模块,用于利用第一比对分值和第二比对分值,确定待识别人脸是否为活体人脸。

区别于前述实施例,通过比对眼部区域和眼周区域在人脸光流图中的光流幅度,得到第一比对分值,并比对眼部区域和眼周区域在人脸光流图中的光流方向,得到第二比对分值,从而利用第一比对分值和第二比对分值,确定待识别人脸是否为活体人脸,能够同时利用光流幅度和光流方向确定是否为活体,进而能够提高识别的准确性。

在一些实施例中,第一比对分值获取子模块,用于统计眼周区域中光流幅度满足预设幅度条件的目标像素点,并将目标像素点在眼部区域中的占比作为第一比对分值。

区别于前述实施例,通过统计眼周区域中光流幅度满足预设幅度条件的目标像素点,并将目标像素点在眼部区域中的占比作为第一比对分值,能够准确地获取与光流幅度有关的第一比对分值。

在一些实施例中,眼周检测模块包括关键点检测子模块,用于对目标区域进行关键点检测,得到目标区域中的关键点,眼周检测模块包括区域确定子模块,用于利用与眼睛对应的关键点,确定目标区域中的眼周区域,第二比对分值获取子模块包括分布情况统计单元,用于统计目标区域中的关键点的光流方向的第一分布情况,并统计眼周区域中至少与眼睛对应的关键点的光流方向的第二分布情况,第二比对分值获取子模块包括相似度确定单元,用于确定第一分布情况和第二分布情况的相似度,并将相似度作为第二比对分值。

区别于前述实施例,通过对目标区域进行关键点检测,得到目标区域中的关键点,并利用与眼睛对应的关键点,确定目标区域中的眼周区域,从而统计目标区域中的关键点的光流方向的第一分布情况,并统计眼周区域中至少与眼睛对应的关键点的光流方向的第二分布情况,并确定第一分布情况和第二分布情况的相似度,并将相似度作为第二比对分值,能够准确地获取与光流方向有关的第二比对分值。

在一些实施例中,活体确定子模块包括最终分值确定单元,用于将第一比对分值和第二比对分值之和,作为待识别人脸的最终分值,活体确定子模块包括分值判断单元,用于在最终分值满足预设分值条件时,确定待识别人脸为活体人脸。

区别于前述实施例,将第一比对分值和第二比对分值之和,作为待识别人脸的最终分值,并在最终分值满足预设分值条件时,确定待识别人脸为活体人脸,能够综合光流幅度和光流方向,从而能够提高活体识别的准确性。

请参阅图9,图9是本申请电子设备90一实施例的框架示意图。电子设备90包括相互耦接的存储器91和处理器92,存储器91存储有程序指令,处理器92用于执行程序指令以实现上述任一部位识别方法实施例中的步骤。

具体而言,处理器92用于控制其自身以及存储器91以实现上述任一部位识别方法实施例中的步骤。处理器92还可以称为cpu(centralprocessingunit,中央处理单元)。处理器92可能是一种集成电路芯片,具有信号的处理能力。处理器92还可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器92可以由多个集成电路芯片共同实现。

本实施例中,处理器92用于获取摄像器件拍摄到的多帧原始图像;处理器92用于对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域;处理器92用于利用多帧原始图像组成为至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理数据,其中,每组原始图像包括至少两帧原始图像;处理器92用于利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图;处理器92用于利用部位光流图,确定待识别部位是否为活体部位。

上述方案,通过获取摄像器件拍摄到的多帧原始图像,并对多帧原始图像进行目标检测,得到每帧原始图像中待识别部位的目标区域,从而利用多帧原始图像组成至少一组原始图像,并将每组原始图像中目标区域的图像数据作为一组待处理图像,且每组原始图像包括至少两帧原始图像,进而利用经训练的光流图生成网络对至少一组待处理数据进行处理,得到对应的部位光流图,故能够免于复杂计算而快速获取稠密光流图,进而利用部位光流图,能够准确且实时地确定待识别部位是否为活体部位。

在一些实施例中,每组原始图像包括相邻两帧原始图像,处理器92用于获取至少一组样本数据及其对应的样本光流图,其中,每组样本数据及其对应的样本光流图是利用一对相邻的样本图像中目标区域的图像数据得到的;处理器92用于利用光流图生成网络对每组样本数据进行处理,得到对应于光流图生成网络的不同网络深度处的多个预测光流图;处理器92用于分别利用多个预测光流图与样本光流图,得到多个损失值;处理器92用于利用多个损失值,调整光流图生成网络的参数。

区别于前述实施例,通过获取至少一组样本数据及其对应的样本光流图,且每组样本数据及其对应的样本光流图是利用一对相邻的样本图像中目标区域的图像数据得到的,并利用光流图生成网络对每组样本数据进行处理,得到对应于光流图生成网络的不同网络深度处的多个预测光流图,从而分别利用多个预测光流图与样本光流图,得到多个损失值,并利用多个损失值,调整光流图生成网络的参数,进而能够加速网络训练。

在一些实施例中,处理器92用于利用与多个损失值对应的预设权值对多个损失值进行加权处理,得到光流图生成网络的最终损失值;处理器92用于利用最终损失值,调整光流图生成网络的参数;其中,与多个损失值对应的预设权值的数值大小,以及多个损失值对应的网络深度之间为正相关关系或负相关关系。

区别于前述实施例,利用与多个损失值对应的预设权值对多个损失值进行加权处理,得到光流图生成网络的最终损失值,并利用最终损失值,调整光流图生成网络的参数,且与多个损失值对应的预设权值的数值大小,以及多个损失值对应的网络深度之间为正相关关系或负相关关系,能够有利于加快网络的收敛速度。

在一些实施例中,处理器92用于对每组待处理数据进行拼接处理,得到拼接数据,并对拼接数据进行特征提取,得到第一特征图;处理器92用于对第一特征图进行降维处理,得到至少一个第二特征图;处理器92用于将第一特征图和至少一个第二特征图进行融合处理,得到第三特征图;处理器92用于将第三特征图进行解码处理,得到部位光流图。

区别于前述实施例,通过对每组待处理数据进行拼接处理,得到拼接数据,并对拼接数据进行特征提取,得到第一特征图,并对第一特征图进行降维处理,得到至少一个第二特征图,从而将第一特征图和至少一个第二特征图进行融合处理,得到第三特征图,能够使第三特征图尽可能地整合全局上下文信息,从而将第三特征图进行解码处理,能够提高得到的部位光流图的准确性,进而能够有利于提高部位识别的准确性。

在一些实施例中,处理器92用于利用光流图生成网络中的特征提取子网络对拼接数据进行特征提取,得到第一特征图;其中,特征提取子网络包括至少一个顺序连接的残差块。

区别于前述实施例,利用至少一个顺序连接的残差块进行特征提取,能够有利于加深网络深度,从而有效提升深度特征。

在一些实施例中,光流图生成网络还包括多个顺序连接的特征融合子网络,处理器92用于

在一些实施例中,处理器92用于对于每一特征融合子网络,将位于其之前且相邻的子网络处理得到的特征图,作为第一特征图,并利用特征融合子网络中至少一个池化层对第一特征图进行池化处理,得到至少一个第二特征图,处理器92用于对于每一特征融合子网络,获取位于其之前第二个特征融合子网络处理得到的第三特征图;处理器92用于将第一特征图、至少一个第二特征图和获取到的第三特征图进行拼接,处理得到第三特征图。

区别于前述实施例,光流图生成网络还包括多个顺序连接的特征融合子网络,并对于每一特征融合子网络,将位于其之前且相邻的子网络处理得到的特征图,作为第一特征图,并利用特征融合子网络中至少一个池化层对第一特征图进行池化处理,得到至少一个第二特征图,且对于每一特征融合子网络,获取位于其之前第二个特征融合子网络处理得到的第三特征图,并将第一特征图、至少一个第二特征图和获取到的第三特征图进行拼接,处理得到第三特征图,能够有利于使第三特征图尽可能地包含全局上下文信息,从而能够有利于提升部位光流图的准确性,进而能够有利于提升后续部位识别的准确性。

在一些实施例中,待识别部位为待识别人脸,部位光流图为人脸光流图,处理器92用于对目标区域进行眼部区域检测,得到目标区域中的眼部区域,并对目标区域进行眼周区域检测,得到目标区域中的眼周区域,其中,眼部区域的覆盖范围大于眼周区域的覆盖范围,处理器92用于比对眼部区域和眼周区域在人脸光流图中的光流幅度,得到第一比对分值;以及,处理器92用于比对眼部区域和眼周区域在人脸光流图中的光流方向,得到第二比对分值;处理器92用于利用第一比对分值和第二比对分值,确定待识别人脸是否为活体人脸。

区别于前述实施例,通过比对眼部区域和眼周区域在人脸光流图中的光流幅度,得到第一比对分值,并比对眼部区域和眼周区域在人脸光流图中的光流方向,得到第二比对分值,从而利用第一比对分值和第二比对分值,确定待识别人脸是否为活体人脸,能够同时利用光流幅度和光流方向确定是否为活体,进而能够提高识别的准确性。

在一些实施例中,处理器92用于统计眼周区域中光流幅度满足预设幅度条件的目标像素点,并将目标像素点在眼部区域中的占比作为第一比对分值。

区别于前述实施例,通过统计眼周区域中光流幅度满足预设幅度条件的目标像素点,并将目标像素点在眼部区域中的占比作为第一比对分值,能够准确地获取与光流幅度有关的第一比对分值。

在一些实施例中,处理器92用于对目标区域进行关键点检测,得到目标区域中的关键点;处理器92用于利用与眼睛对应的关键点,确定目标区域中的眼周区域;处理器92用于统计目标区域中的关键点的光流方向的第一分布情况,并统计眼周区域中至少与眼睛对应的关键点的光流方向的第二分布情况;处理器92用于确定第一分布情况和第二分布情况的相似度,并将相似度作为第二比对分值。

区别于前述实施例,通过对目标区域进行关键点检测,得到目标区域中的关键点,并利用与眼睛对应的关键点,确定目标区域中的眼周区域,从而统计目标区域中的关键点的光流方向的第一分布情况,并统计眼周区域中至少与眼睛对应的关键点的光流方向的第二分布情况,并确定第一分布情况和第二分布情况的相似度,并将相似度作为第二比对分值,能够准确地获取与光流方向有关的第二比对分值。

在一些实施例中,处理器92用于将第一比对分值和第二比对分值之和,作为待识别人脸的最终分值;处理器92用于在判断最终分值满足预设分值条件时,确定待识别人脸为活体人脸。

区别于前述实施例,将第一比对分值和第二比对分值之和,作为待识别人脸的最终分值,并在最终分值满足预设分值条件时,确定待识别人脸为活体人脸,能够综合光流幅度和光流方向,从而能够提高活体识别的准确性。

请参阅图10,图10为本申请存储装置100一实施例的框架示意图。存储装置100存储有能够被处理器运行的程序指令101,程序指令101用于实现上述任一部位识别方法实施例中的步骤。

上述方案,能够准确且实时地确定待识别部位是否为活体部位。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。

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

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1