活体人脸识别方法和装置与流程

文档序号:18901745发布日期:2019-10-18 22:02阅读:309来源:国知局
活体人脸识别方法和装置与流程

本发明涉及人脸识别领域,特别涉及一种活体人脸识别方法和装置。



背景技术:

人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部识别的一系列相关技术,通常也叫做人像识别、面部识别。

目前,常见的活体人脸识别普遍采用人脸的动作识别来确认是否为真实的人脸,例如,要求被检测者做指定动作,眨眼,旋转脑袋等等,如果能够按照要求正确执行指定动作,则确认为真实的人脸。但是,这种检测技术存在一个弊端,就是执行指定动作也是可以作假的,检测的结果会出现误判,即将一个非活体人脸识别为真实的活体人脸,从而导致识别率降低。



技术实现要素:

本发明提供了一种活体人脸识别方法和装置,以解决上述技术问题。所述技术方案如下:

一方面,本发明提供了一种活体人脸识别方法,所述方法包括:

检测到视频中的待测人脸,在所述人脸的不同部位上选取n个监测点;

对于选取的每一个监测点,连续测量所述视频内m帧的rbg中的g值,将每帧内所述监测点的g值与其相邻多个点的g值取平均后形成所述监测点在该帧的颜色值,最终得到所述m帧内所述n个监测点的颜色值g[m][n];

采用卷积神经网络(convolutionalneuralnetworks,cnn)进行人脸识别学习得到模型,将所述颜色值g[m][n]输入所述模型识别所述人脸是活体还是非活体,得到第一判定结果;

利用快速傅里叶变换或小波变换对所述颜色值g[m][n]进行运算,得到所述人脸的血谱频率,与预设阈值比较后确定所述人脸是活体还是非活体,得到第二判定结果;

将所述第一判定结果与第二判定结果进行组合,查找预设的组合与识别概率的对应关系,找到所述组合对应的识别概率确定是否为活体人脸;或者,查找预设的组合与心率的对应关系,找到所述组合对应的心率确定是否为活体人脸。

可选地,所述采用卷积神经网络cnn进行人脸识别学习得到模型,将所述颜色值g[m][n]输入所述模型识别所述人脸是活体还是非活体,得到第一判定结果,包括:

采用卷积神经网络cnn学习指定个数以上的人脸监测点数据与真实人脸的对应关系,得到模型,并采用多个真实人脸数据测试后调整所述模型;

将所述颜色值g[m][n]输入调整后的所述模型得到一个向量的相似度,如果所述相似度大于指定的相似度阈值,则得到第一判定结果为活体人脸,如果所述相似度小于等于所述相似度阈值,则得到第一判定结果为非活体人脸。

可选地,所述利用快速傅里叶变换或小波变换对所述颜色值g[m][n]进行运算,得到所述人脸的血谱频率,与预设阈值比较后确定所述人脸是活体还是非活体,得到第二判定结果,包括:

利用快速傅里叶变换或小波变换对所述颜色值g[m][n]进行运算,得到每个监测点的波形频率级数,在每个频率级数中取最小频率得到n个频率;去掉所述n个频率中的最大值和最小值后取平均,得到所述人脸的血谱频率;

如果所述血谱频率小于第一阈值,则得到第二判定结果为活体人脸;如果所述血谱频率大于等于所述第一阈值且小于第二阈值,则得到第二判定结果为待定;如果所述血谱频率大于等于所述第二阈值,则得到第二判定结果为非活体人脸。

可选地,所述查找预设的组合与识别概率的对应关系,找到所述组合对应的识别概率确定是否为活体人脸,包括:

查找预设的组合与识别概率的对应关系,如果所述组合为活体与活体、活体与待定中的任一个,则对应的识别概率大于指定识别概率,确定所述人脸为活体人脸;如果所述组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的识别概率小于等于所述指定识别概率,确定所述人脸为非活体人脸。

可选地,所述查找预设的组合与心率的对应关系,找到所述组合对应的心率确定是否为活体人脸,包括:

查找预设的组合与心率的对应关系,如果所述组合为活体与活体、活体与待定中的任一个,则对应的心率为所述血谱频率,确定所述人脸为活体人脸;如果所述组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的心率未检测到,确定所述人脸为非活体人脸。

另一方面,本发明提供了一种活体人脸识别装置,所述装置包括:

检测模块,其配置成检测到视频中的待测人脸,在所述人脸的不同部位上选取n个监测点;

测量模块,其配置成对于选取的每一个监测点,连续测量所述视频内m帧的rbg中的g值,将每帧内所述监测点的g值与其相邻多个点的g值取平均后形成所述监测点在该帧的颜色值,最终得到所述m帧内所述n个监测点的颜色值g[m][n];

第一判定模块,其配置成采用卷积神经网络cnn进行人脸识别学习得到模型,将所述颜色值g[m][n]输入所述模型识别所述人脸是活体还是非活体,得到第一判定结果;

第二判定模块,其配置成利用快速傅里叶变换或小波变换对所述颜色值g[m][n]进行运算,得到所述人脸的血谱频率,与预设阈值比较后确定所述人脸是活体还是非活体,得到第二判定结果;

识别模块,其配置成将所述第一判定结果与第二判定结果进行组合,查找预设的组合与识别概率的对应关系,找到所述组合对应的识别概率确定是否为活体人脸;或者,查找预设的组合与心率的对应关系,找到所述组合对应的心率确定是否为活体人脸。

可选地,所述第一判定模块具体配置成:

采用卷积神经网络cnn学习指定个数以上的人脸监测点数据与真实人脸的对应关系,得到模型,并采用多个真实人脸数据测试后调整所述模型;

将所述颜色值g[m][n]输入调整后的所述模型得到一个向量的相似度,如果所述相似度大于指定的相似度阈值,则得到第一判定结果为活体人脸,如果所述相似度小于等于所述相似度阈值,则得到第一判定结果为非活体人脸。

可选地,所述第二判定模块具体配置成:

利用快速傅里叶变换或小波变换对所述颜色值g[m][n]进行运算,得到每个监测点的波形频率级数,在每个频率级数中取最小频率得到n个频率;去掉所述n个频率中的最大值和最小值后取平均,得到所述人脸的血谱频率;

如果所述血谱频率小于第一阈值,则得到第二判定结果为活体人脸;如果所述血谱频率大于等于所述第一阈值且小于第二阈值,则得到第二判定结果为待定;如果所述血谱频率大于等于所述第二阈值,则得到第二判定结果为非活体人脸。

可选地,所述识别模块具体配置成:

查找预设的组合与识别概率的对应关系,如果所述组合为活体与活体、活体与待定中的任一个,则对应的识别概率大于指定识别概率,确定所述人脸为活体人脸;如果所述组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的识别概率小于等于所述指定识别概率,确定所述人脸为非活体人脸。

可选地,所述识别模块具体配置成:

查找预设的组合与心率的对应关系,如果所述组合为活体与活体、活体与待定中的任一个,则对应的心率为所述血谱频率,确定所述人脸为活体人脸;如果所述组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的心率未检测到,确定所述人脸为非活体人脸。

另一方面,本发明还提供了一种计算设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述的方法。

另一方面,本发明还提供了一种计算机可读存储介质,优选为非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现如上所述的方法。

另一方面,本发明还提供了一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行如上所述的方法。

本发明提供的技术方案带来的有益效果是:基于多个监测点的rbg中的g值进行测量,结合cnn深度学习及血谱频率对视频中的人脸进行识别,以确定是否为活体人脸,能够提高活体人脸的识别率,避免误判,克服了通过指定动作来识别人脸的技术缺陷。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一实施例提供的活体人脸识别方法流程图;

图2是本发明另一实施例提供的活体人脸识别方法流程图;

图3是本发明另一实施例提供的活体人脸识别装置结构图;

图4是本发明另一个实施例的计算设备结构图;

图5是本发明另一个实施例的计算机可读存储介质结构图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

参见图1,本发明一实施例提供了一种活体人脸识别方法,包括:

101:检测到视频中的待测人脸,在该人脸的不同部位上选取n个监测点;

102:对于选取的每一个监测点,连续测量该视频内m帧的rbg(redbluegreen颜色值)中的g(green)值,将每帧内该监测点的g值与其相邻多个点的g值取平均后形成该监测点在该帧的颜色值,最终得到该m帧内该n个监测点的颜色值g[m][n];

103:采用卷积神经网络cnn进行人脸识别学习得到模型,将该颜色值g[m][n]输入该模型识别该人脸是活体还是非活体,得到第一判定结果;

本实施例中,活体是指真实的人脸,非活体是指静态的人脸图片等。

104:利用快速傅里叶变换或小波变换对该颜色值g[m][n]进行运算,得到该人脸的血谱频率,与预设阈值比较后确定该人脸是活体还是非活体,得到第二判定结果;

105:将该第一判定结果与第二判定结果进行组合,查找预设的组合与识别概率的对应关系,找到该组合对应的识别概率确定是否为活体人脸;或者,查找预设的组合与心率的对应关系,找到该组合对应的心率确定是否为活体人脸。

本实施例中,可选的,上述采用卷积神经网络cnn进行人脸识别学习得到模型,将该颜色值g[m][n]输入该模型识别该人脸是活体还是非活体,得到第一判定结果,包括:

采用卷积神经网络cnn学习指定个数以上的人脸监测点数据与真实人脸的对应关系,得到模型,并采用多个真实人脸数据测试后调整该模型;

将该颜色值g[m][n]输入调整后的该模型得到一个向量的相似度,如果该相似度大于指定的相似度阈值,则得到第一判定结果为活体人脸,如果该相似度小于等于该相似度阈值,则得到第一判定结果为非活体人脸。

本实施例中,可选的,上述利用快速傅里叶变换或小波变换对该颜色值g[m][n]进行运算,得到该人脸的血谱频率,与预设阈值比较后确定该人脸是活体还是非活体,得到第二判定结果,包括:

利用快速傅里叶变换或小波变换对该颜色值g[m][n]进行运算,得到每个监测点的波形频率级数,在每个频率级数中取最小频率得到n个频率;去掉该n个频率中的最大值和最小值后取平均,得到该人脸的血谱频率;

如果该血谱频率小于第一阈值,则得到第二判定结果为活体人脸;如果该血谱频率大于等于该第一阈值且小于第二阈值,则得到第二判定结果为待定;如果该血谱频率大于等于该第二阈值,则得到第二判定结果为非活体人脸。

本实施例中,可选的,上述查找预设的组合与识别概率的对应关系,找到该组合对应的识别概率确定是否为活体人脸,包括:

查找预设的组合与识别概率的对应关系,如果该组合为活体与活体、活体与待定中的任一个,则对应的识别概率大于指定识别概率,确定该人脸为活体人脸;如果该组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的识别概率小于等于该指定识别概率,确定该人脸为非活体人脸。

本实施例中,可选的,上述查找预设的组合与心率的对应关系,找到该组合对应的心率确定是否为活体人脸,包括:

查找预设的组合与心率的对应关系,如果该组合为活体与活体、活体与待定中的任一个,则对应的心率为该血谱频率,确定该人脸为活体人脸;如果该组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的心率未检测到,确定该人脸为非活体人脸。

本实施例提供的上述方法,基于多个监测点的rbg中的g值进行测量,结合cnn深度学习及血谱频率对视频中的人脸进行识别,以确定是否为活体人脸,能够提高活体人脸的识别率,避免误判,克服了通过指定动作来识别人脸的技术缺陷。

参见图2,本发明另一实施例提供了一种活体人脸识别方法,包括:

201:检测到视频中的待测人脸,在该人脸的不同部位上选取n个监测点;

本实施例中,可选的,选取的监测点包含但不限于以下的一种或多种:额头中、额头左、额头右、左眼睛,右眼睛、人中、左脸颊、右脸颊、鼻头、下巴、嘴角等等。监测点的数量根据人脸识别的精度要求而确定,数量越多,精度越高,本实施例对此不做具体限定。例如,选取不少于10个监测点。

202:对于选取的每一个监测点,连续测量该视频内m帧的rbg中的g值,将每帧内该监测点的g值与其相邻多个点的g值取平均后形成该监测点在该帧的颜色值,最终得到该m帧内该n个监测点的颜色值g[m][n],然后执行203或205;

本实施例中,可选的,上述m帧可以根据需要指定,如指定200个连续的帧,或者指定5秒钟,每秒内包括30个帧,共计得到150个帧,取10个监测点的情况下,可以测量得到颜色值g[150][10]等等,本实施例对此不做具体限定。

其中,每个监测点的相邻多个点,可以根据需要选取,如选取上下左右四个相邻点,或者选取上下左右以及左上角、右上角、左下角和右下角共8个相邻点,本实施例对此不做具体限定。

203:采用卷积神经网络cnn学习指定个数以上的人脸监测点数据与真实人脸的对应关系,得到模型,并采用多个真实人脸数据测试后调整该模型;

其中,上述指定个数可以根据需要设定,如1000个以上的人脸监测点。用于测试的真实人脸数目也可以根据需要设定,如测试200个以上的真实人脸数据。

204:将该颜色值g[m][n]输入调整后的该模型得到一个向量的相似度,如果该相似度大于指定的相似度阈值,则得到第一判定结果为活体人脸,如果该相似度小于等于该相似度阈值,则得到第一判定结果为非活体人脸,然后执行207;

205:利用快速傅里叶变换或小波变换对该颜色值g[m][n]进行运算,得到每个监测点的波形频率级数,在每个频率级数中取最小频率得到n个频率;去掉该n个频率中的最大值和最小值后取平均,得到该人脸的血谱频率;

206:如果该血谱频率小于第一阈值,则得到第二判定结果为活体人脸;如果该血谱频率大于等于该第一阈值且小于第二阈值,则得到第二判定结果为待定;如果该血谱频率大于等于该第二阈值,则得到第二判定结果为非活体人脸;

207:将第一判定结果与第二判定结果进行组合,然后执行208或209;

208:查找预设的组合与识别概率的对应关系,如果该组合为活体与活体、活体与待定中的任一个,则对应的识别概率大于指定识别概率,确定该人脸为活体人脸;如果该组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的识别概率小于等于该指定识别概率,确定该人脸为非活体人脸,流程结束;

其中,指定识别概率可以根据需要设定,如50%或者60%等等,本实施例对此不做具体限定。

其中,预设的组合与识别概率的对应关系可以具体如下:活体与活体=>活体概率90%;活体与待定=>活体概率80%;活体与非活体=>活体概率50%;非活体与活体=>活体概率50%;非活体与待定=>活体概率40%;非活体与非活体=>活体概率10%,本实施例对此不做具体限定。

209:查找预设的组合与心率的对应关系,如果该组合为活体与活体、活体与待定中的任一个,则对应的心率为该血谱频率,确定该人脸为活体人脸;如果该组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的心率未检测到,确定该人脸为非活体人脸,流程结束。

本实施例提供的上述方法,基于多个监测点的rbg中的g值进行测量,结合cnn深度学习及血谱频率对视频中的人脸进行识别,以确定是否为活体人脸,能够提高活体人脸的识别率,避免误判,克服了通过指定动作来识别人脸的技术缺陷。

参见图3,本发明另一实施例还提供了一种活体人脸识别装置,包括:

检测模块301,其配置成检测到视频中的待测人脸,在该人脸的不同部位上选取n个监测点;

测量模块302,其配置成对于选取的每一个监测点,连续测量该视频内m帧的rbg中的g值,将每帧内该监测点的g值与其相邻多个点的g值取平均后形成该监测点在该帧的颜色值,最终得到该m帧内该n个监测点的颜色值g[m][n];

第一判定模块303,其配置成采用卷积神经网络cnn进行人脸识别学习得到模型,将该颜色值g[m][n]输入该模型识别该人脸是活体还是非活体,得到第一判定结果;

第二判定模块304,其配置成利用快速傅里叶变换或小波变换对该颜色值g[m][n]进行运算,得到该人脸的血谱频率,与预设阈值比较后确定该人脸是活体还是非活体,得到第二判定结果;

识别模块305,其配置成将该第一判定结果与第二判定结果进行组合,查找预设的组合与识别概率的对应关系,找到该组合对应的识别概率确定是否为活体人脸;或者,查找预设的组合与心率的对应关系,找到该组合对应的心率确定是否为活体人脸。

本实施例中,可选的,上述第一判定模块具体配置成:

采用卷积神经网络cnn学习指定个数以上的人脸监测点数据与真实人脸的对应关系,得到模型,并采用多个真实人脸数据测试后调整该模型;

将该颜色值g[m][n]输入调整后的该模型得到一个向量的相似度,如果该相似度大于指定的相似度阈值,则得到第一判定结果为活体人脸,如果该相似度小于等于该相似度阈值,则得到第一判定结果为非活体人脸。

本实施例中,可选的,上述第二判定模块具体配置成:

利用快速傅里叶变换或小波变换对该颜色值g[m][n]进行运算,得到每个监测点的波形频率级数,在每个频率级数中取最小频率得到n个频率;去掉该n个频率中的最大值和最小值后取平均,得到该人脸的血谱频率;

如果该血谱频率小于第一阈值,则得到第二判定结果为活体人脸;如果该血谱频率大于等于该第一阈值且小于第二阈值,则得到第二判定结果为待定;如果该血谱频率大于等于该第二阈值,则得到第二判定结果为非活体人脸。

本实施例中,可选的,上述识别模块具体配置成:

查找预设的组合与识别概率的对应关系,如果该组合为活体与活体、活体与待定中的任一个,则对应的识别概率大于指定识别概率,确定该人脸为活体人脸;如果该组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的识别概率小于等于该指定识别概率,确定该人脸为非活体人脸。

本实施例中,可选的,上述识别模块具体配置成:

查找预设的组合与心率的对应关系,如果该组合为活体与活体、活体与待定中的任一个,则对应的心率为该血谱频率,确定该人脸为活体人脸;如果该组合为活体与非活体、非活体与待定、非活体与非活体中的任一个,则对应的心率未检测到,确定该人脸为非活体人脸。

本实施例提供的上述装置可以执行上述任一方法实施例中提供的方法,详细过程见方法实施例中的描述,此处不赘述。

本实施例提供的上述装置,基于多个监测点的rbg中的g值进行测量,结合cnn深度学习及血谱频率对视频中的人脸进行识别,以确定是否为活体人脸,能够提高活体人脸的识别率,避免误判,克服了通过指定动作来识别人脸的技术缺陷。

根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。

本申请实施例还提供了一种计算设备,参照图4,该计算设备包括存储器1120、处理器1110和存储在所述存储器1120内并能由所述处理器1110运行的计算机程序,该计算机程序存储于存储器1120中的用于程序代码的空间1130,该计算机程序在由处理器1110执行时实现用于执行任一项根据本发明的方法步骤1131。

本申请实施例还提供了一种计算机可读存储介质。参照图5,该计算机可读存储介质包括用于程序代码的存储单元,该存储单元设置有用于执行根据本发明的方法步骤的程序1131′,该程序被处理器执行。

本申请实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机上运行时,使得计算机执行根据本发明的方法步骤。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、获取其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetictape),软盘(英文:floppydisk),光盘(英文:opticaldisc)及其任意组合。

以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

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