CN112215069A - 活体检测、辅助活体检测的方法、装置和设备 - Google Patents
活体检测、辅助活体检测的方法、装置和设备 Download PDFInfo
- Publication number
- CN112215069A CN112215069A CN202010943058.5A CN202010943058A CN112215069A CN 112215069 A CN112215069 A CN 112215069A CN 202010943058 A CN202010943058 A CN 202010943058A CN 112215069 A CN112215069 A CN 112215069A
- Authority
- CN
- China
- Prior art keywords
- video
- detected
- degree
- determining
- jitter
- 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.)
- Pending
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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/40—Spoof detection, e.g. liveness detection
- G06V40/45—Detection of the body part being alive
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Studio Devices (AREA)
Abstract
本说明书实施例公开了一种活体检测、辅助活体检测的方法、装置和设备,其中,所述活体检测方法,可以接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;然后基于该抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
Description
技术领域
本文件涉及计算机技术领域,尤其涉及一种活体检测、辅助活体检测的方法、装置和设备。
背景技术
随着人工智能技术的发展,人脸识别已广泛应用于身份识别领域。为了防止不法分子通过照片打印、屏幕翻拍和头膜等方式,冒充合法用户欺骗人脸识别系统以实施危害合法用户的财产、人身、安全等行为,相关技术在人脸识别中还引入了活体检测技术。具体的,在人脸识别中,通过拍摄包含眨眼、张嘴和摇头等活体动作的视频的方式,以及静默活体等手段,防御照片打印、屏幕翻拍和头膜等攻击。
但是,相关技术中的活体检测技术,对近期出现的通过软件生成包含眨眼、张嘴和摇头等动作的视频,并使用注入该视频的方式对人脸识别系统进行攻击的新型攻击方法无能为力,且该攻击方式无屏幕边框、无屏幕摩尔纹痕迹,因此还可以绕过静默活体检测。可见,相关技术中的活体检测技术对注入视频攻击没有检测能力,亟需改进。
发明内容
本说明书实施例提供了一种活体检测、辅助活体检测的方法、装置和设备,以解决相关技术中的活体检测技术对注入视频攻击没有检测能力的问题。
为解决上述技术问题,本说明书实施例是这样实现的:
第一方面,提出了一种活体检测方法,包括:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
第二方面,提出了一种活体检测方法,包括:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
第三方面,提出了一种活体检测装置,包括:
待检测视频接收模块,接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
抖动程度确定模块,从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
判断模块,基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
第四方面,提出了一种活体检测装置,包括:
待检测视频拍摄模块,在开启震动马达之后,拍摄待检测视频;
待检测视频上传模块,将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
第五方面,提出了一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
第六方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
第七方面,提出了一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
第八方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
由以上本说明书实施例提供的至少一个技术方案,由于正常的活体检测,在用户进行刷脸时如果终端设备(如手机)发生震动,拍摄得到的待检测视频也会同步震动,而注入攻击视频是软件生成的而不是真实拍摄的,因此不会形成震动,进而在终端设备拍摄待检测视频前开启震动马达,可以使得服务端基于终端设备上传的待检测视频的抖动程度,判断待检测视频是否为真实拍摄的活体视频,从而很好地区分正常刷脸和注入视频攻击,解决了相关技术中的活体检测技术对注入视频攻击没有检测能力的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本说明书一实施例提供的一种活体检测系统的架构示意图。
图2是本说明书一实施例提供的一种活体检测方法的流程示意图。
图3是图2中步骤204的一种详细流程示意图。
图4是本说明书一实施例提供的一种辅助活体检测方法的流程示意图。
图5是本说明书另一实施例提供的一种辅助活体检测方法的流程示意图。
图6是本说明书实施例提供的一种电子设备的结构示意图。
图7是本说明书一实施例提供的一种活体检测装置的结构示意图。
图8是图7中模块702的一种详细结构示意图。
图9是本说明书一实施例提供的一种辅助活体检测装置的结构示意图。
图10是本说明书另一实施例提供的一种辅助活体检测装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文件保护的范围。
为了解决相关技术中的活体检测技术对注入视频攻击没有检测能力的问题,本说明书实施例提供一种辅助活体检测的方法和装置,以及一种活体检测方法和装置,下面分别进行说明。
首先结合图1对本说明书的一个实施例提供的一种活体检测系统的架构进行说明。如图1所示,本说明书实施例的一个实施例提供的活体检测系统可包括终端设备1和服务端2。
终端设备1中可以安装有需要进行身份识别的客户端(可以是APP,也可以是网页版客户端),该终端设备包括但不限于:智能手机、个人电脑(personal computer,PC)、笔记本电脑、平板电脑、电子阅读器、网络电视、可穿戴设备等智能终端设备中的任一种。
服务端2可以是需要进行身份识别的客户端的后台服务端设备,该服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。
在本说明书实施例中,终端设备1中安装的客户端在发起身份识别之后,在采集用于活体检测的待检测视频前,先开启震动马达,然后拍摄待检测视频并上传至服务端;服务端2接收到终端设备上传的待检测视频后,从中按序选取多帧图像,并基于这多帧图像确定待检测视频拍摄过程中的抖动程度,然后基于该抖动程度判断待检测视频是否为真实拍摄的活体视频,具体的,如果抖动程度大于预设阈值,则确定待检测视频为真实拍摄的活体视频,否则确定待检测视频为注入攻击视频。
注入攻击,是指攻击者将链路中的正常数据(在本说明书实施例中是终端设备实际拍摄的待检测视频)进行拦截,并使用另一份的数据(在本说明书实施例中是注入视频)进行替换,达到篡改数据流的一种攻击手段。
由于正常的活体检测,在用户进行刷脸时如果终端设备(如手机)发生震动,拍摄得到的待检测视频也会同步震动,而注入攻击视频是软件生成的而不是真实拍摄的,因此不会形成震动,进而在终端设备拍摄待检测视频前开启震动马达,可以使得服务端基于终端设备上传的待检测视频的抖动程度,判断待检测视频是否为真实拍摄的活体视频,从而很好地区分正常刷脸和注入视频攻击,解决了相关技术中的活体检测技术对注入视频攻击没有检测能力的问题,并且具有用户无感知、防注入准确率高的特点。
在图1所示的活体检测系统的上,如图2所示,本说明书的一个实施例提供了一种活体检测方法,可应用于图1所示的服务端2中,该方法可以包括:
步骤202、接收终端设备拍摄并上传的待检测视频,其中,在终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态。
终端设备在拍摄待检测视频前,先调用终端设备的操作系统的指定应用程序编程接口(Application Programming Interface,API)开启终端设备中安装的震动马达,然后开始采集N帧图像形成待检测视频,并在编码之后上传至服务端。由于终端设备上传的待检测视频一般是经过编码的视频流,服务端接收到该视频流之后,需要先对其进行解码得到包含N帧图像的视频。
由于本说明书实施例是针对人脸识别的活体检测的,因此,作为一个例子,上述待检测视频中包含人脸。可选地,待检测视频是终端设备在检测到人脸的质量满足预设条件之后拍摄并上传的。
步骤204、从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度。
从待检测视频中选取的多帧图像,可以是待检测视频中包含的部分图像也可以是全部图像。其中,按序选取是指按照待检测视频中包含的图像的播放顺序选取。
基于从待检测视频中选取的多帧图像,确定待检测视频拍摄过程中的抖动程度的方式有很多种,下面进行示例性的说明。
如图3所示,作为一个例子,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,可包括:
步骤302、基于预设算法分别提取从待检测视频中选取的多帧图像中的至少一个关键点。
在一种实施方式中,可以基于人脸关键点检测算法,从所述多帧图像中分别检测至少一个人脸关键点,如眼睛、眉毛、嘴巴、鼻子以及人脸轮廓中的至少一个点。
在另一种实施方式中,可以基于尺度不变特征变换(Scale-Invariant FeatureTransform,SIFT)算法,从所述多帧图像中分别检测至少一个SIFT特征点。SIFT是一种计算机视觉的特征提取算法,用来侦测与描述图像中的局部性特征。具体的,它是在不同的尺度空间上查找关键点(特征点),并计算出关键点的方向。SIFT所查找到的关键点是一些十分突出、不会因光照、仿射变换和噪音等因素而变化的点,如角点、边缘点、暗区的亮点及亮区的暗点等。
在又一种实施方式中,可以基于加速稳健特征(Speeded Up Robust Features,SURF)算法,从所述多帧图像中分别检测至少一个SURF特征点。SURF是一种稳健的图像识别和描述算法,它可以理解为是SIFT的高效变种,也是提取尺度不变特征,算法步骤与SIFT算法大致相同,但采用的方法不一样,要比SIFT算法更高效。
在实际应用中,上述三种实施方式既可以单独实施也可以结合实施,也就是说,上述预设算法可以是人脸关键点检测算法、尺度不变特征变换SIFT和加速稳健特征SURF中的一种或多种。
步骤304、确定所述多帧图像中所述至少一个关键点的位置,得到所述至少一个关键点在所述多帧图像中的位置参数序列。
一个关键点在一帧图像中的位置参数可以是该关键点在该图像中的坐标。
假设上述多帧图像共包括m帧,对其中的一个关键点Pi,它在这m帧图像中的位置参数序列可以表示为: 为简要起见,可以简化表示为:{Pi1,Pi2,…,Pij,…,Pim},其中,i=1,2,3,…,n,n为关键点的总数,j=1,2,3,…,m,n和m均为正整数,x表示横坐标,y表示纵坐标。
步骤306、基于所述位置参数序列确定所述待检测视频拍摄过程中的抖动程度。
基于上述位置参数序列确定待检测视频拍摄过程中的抖动程度的方式可以有很多种,下面列举两种。
第一种
先确定上述位置参数序列中相邻两个位置参数的差值(该差值为横坐标差值和/或纵坐标差值),得到所述至少一个关键点在所述多帧图像中的位置参数差值序列;然后确定所述位置参数差值序列中相邻两个差值的正负符号变化次数;接下来,使用所述正负符号变化次数表征所述待检测视频拍摄过程中的抖动程度。
举例来说,假设一个关键点的上述位置参数序列被表示为:{Pi1,Pi2,…,Pij,…,Pim},共包含m个元素,则该关键点在上述多帧图像中的位置参数差值序列可以表示为:{Pi2-Pi1,…,Pi(j+1)-Pij,…,Pim-Pi(m-1)},共包含m-1个元素,为简要起见,该关键点的位置参数差值序列可以表示为:{Di1,…,Dij,…,Di(m-1)},其中,Dij=Pi(j+1)-Pij。
可以理解,一个关键点在相邻两帧图像的位置参数的差值有正有负,如果该关键点在后一帧图像中的位置参数与该关键点在前一帧图像中的位置参数的差值为正,说明后一阵图像相对于前一帧图像发生了正向移动,反之发生了逆向移动。
上述位置参数差值序列中相邻两个差值的正负符号变化次数,是指该序列中相邻两个差值的正负符号发生交替的总次数,从该序列的第一个元素开始,如果下一个差值相对于上一个差值正负符号发生了变化,正负符号变化次数计数一次。例如,假设上述位置参数差值序列为{+2,-1,+3,-1,-2,+3,},那么可以确定出该位置参数差值序列中相邻两个差值的正负符号变化次数为5。
进一步地,可以使用该正负符号变化次数(可用V表示,如V=5)表征待检测视频拍摄过程中的抖动程度,或者说,待检测视频拍摄过程中的抖动程度等于该位置参数差值序列中相邻两个差值的正负符号变化次数。
第二种
可以基于上述位置参数序列和预设分类模型,确定待检测视频拍摄过程中的抖动程度;其中,预设分类模型是基于抖动位置参数序列和非抖动位置参数序列训练得到的,抖动位置参数序列是基于抖动程度大于预设阈值的视频中多帧图像中至少一个关键点的位置确定的,非抖动位置参数序列是基于抖动程度小于或等于预设阈值的视频中多帧图像中至少一个关键点的位置确定的。
上述预设分类模型可以看作是一个二分类模型,能基于一个视频的位置参数序列判断出该视频拍摄过程中是否发生抖动。上述预设分类算法可以包括支持向量机(SupportVector Machine,SVM)和卷积神经网络(Convolutional Neural Networks,CNN)等二分类算法中的一种。
需要说明的是,用于训练预设分类模型的抖动位置参数序列和非抖动位置参数序列的确定方式,与上述确定待检测视频对应的位置参数序列的方式一致。具体是从相应的视频中选取多帧图像,然后基于预设算法分别提取这多帧图像中的至少一个关键点;之后确定这多帧图像中这些关键点的位置,得到这些关键点在这多帧图像中的位置参数序列,不再详细叙述。
步骤206、基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
当步骤204采用上述第一种方式确定待检测视频拍摄过程中的抖动程度时,步骤206可包括:在所述抖动程度大于预设阈值时,确定待检测视频为真实拍摄的活体视频;在所述抖动程度小于或等于预设阈值时,确定待检测视频为注入攻击视频。也就是说,在V大于预设阈值时,确定待检测视频为真实拍摄的活体视频;在V小于或等于预设阈值时,确定待检测视频为注入攻击视频。
当步骤204采用上述第二种方式确定待检测视频拍摄过程中的抖动程度时,步骤206可包括:在确定所述待检测视频有抖动时,确定所述待检测视频为真实拍摄的活体视频;在确定所述待检测视频无抖动时,确定所述待检测视频为注入攻击视频。
图2所示的一个实施例提供的一种活体检测方法,由于正常的活体检测,在用户进行刷脸时如果终端设备(如手机)发生震动,拍摄得到的待检测视频也会同步震动,而注入攻击视频是软件生成的而不是真实拍摄的,因此不会形成震动,进而在终端设备拍摄待检测视频前开启震动马达,可以使得服务端基于终端设备上传的待检测视频的抖动程度,判断待检测视频是否为真实拍摄的活体视频,从而很好地区分正常刷脸和注入视频攻击,解决了相关技术中的活体检测技术对注入视频攻击没有检测能力的问题,并且具有用户无感知、防注入准确率高的特点。
可选地,在上述步骤206之后,本说明书实施例提供的一种活体检测算法,还可以包括:在确定待检测视频为真实拍摄的活体视频的情况下,基于待检测视频进行活体检测;在确定待检测视频为注入攻击视频时情况下,发出注入视频攻击警告,和/或,提醒用户重新拍摄上传待检测视频。
可以理解,在确定待检测视频为注入攻击视频时情况下,发出注入视频攻击警告,和/或,提醒用户重新拍摄上传待检测视频,可以精准地防止注入视频攻击。
图4示出了本说明书一实施例提供的一种辅助活体检测的方法,该方法可应用于图1所示的终端设备1中,该方法可以包括:
步骤402、在开启震动马达之后,拍摄待检测视频。
步骤404、将所述待检测视频上传至服务端。
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频,详细过程请参见上文对图2所示的实施例的描述。
图4所示的实施例提供的一种活体检测方法,由于正常的活体检测,在用户进行刷脸时如果终端设备(如手机)发生震动,拍摄得到的待检测视频也会同步震动,而注入攻击视频是软件生成的而不是真实拍摄的,因此不会形成震动,进而在终端设备拍摄待检测视频前开启震动马达,可以使得服务端基于终端设备上传的待检测视频的抖动程度,判断待检测视频是否为真实拍摄的活体视频,从而很好地区分正常刷脸和注入视频攻击,解决了相关技术中的活体检测技术对注入视频攻击没有检测能力的问题,并且具有用户无感知、防注入准确率高的特点。
可选地,图5示出了本说明书另一实施例提供的一种辅助活体检测的方法,该方法也可应用于图1所示的终端设备1中,该方法可以包括:
步骤400、开始。
步骤406、初始化摄像头。
初始化终端设备中的摄像头,已完成摄像头基本参数的设置。
步骤408、执行人脸检测算法。
具体可以执行人脸检测算法选取拍摄区域内最大的人脸。
步骤410、判断人脸的质量是否满足预设条件,若为是,执行步骤412,否则,返回执行步骤408。
具体可以在检测到人脸之后,可以基于预设评分规则或模型对检测到的人脸质量进行评分,如果评分小于一定阈值,则确定人脸的质量不满足预设条件,需要继续检测;否则,确定人脸的质量满足预设条件,可以执行下一步骤。
步骤412、开启终端设备的震动马达。
具体可以通过调用指定的API开启移动终端中的震动马达。
步骤402、在开启震动马达之后,拍摄待检测视频。
在实际应用中,可以连续采集30帧形成待检测视频。
步骤404、将所述待检测视频上传至服务端。
在实际应用中,还可以将待检测视频使用预设编码方式编码后上传至服务端,例如编码为mp4格式。
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频,,详细过程请参见上文对图2所示的实施例的描述。
本说明书实施例提供的一种辅助活体检测的方法,由于是在检测到的人脸质量满足预设条件的情况下,再采集待检测视频并上传至服务端,因此可以保证服务端的人脸识别结果更快速、更准确,而不会因为人脸质量不合格而被服务端提示重新拍摄待检测视频,或提示检测失败。
以上是对本说明书提供的方法实施例的说明,下面对本说明书提供的电子设备进行介绍。
图6是本说明书的一个实施例提供的电子设备的结构示意图。请参考图6,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成活体检测装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
或者,处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成辅助活体检测的装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
上述如本说明书图2或图4所示实施例揭示的活体检测方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书一个或多个实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书一个或多个实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图2或图4所示的实施例提供的活体检测方法,本说明书在此不再赘述。
当然,除了软件实现方式之外,本说明书的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图3所示实施例的方法,并具体用于执行以下操作:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图4所示实施例的方法,并具体用于执行以下操作:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
如图7所示,本说明书的一个实施例提供了一种活体检测装置700,在一种软件实施方式中,装置700可包括:待检测视频接收模块701、抖动程度确定模块702和判断模块703。
待检测视频接收模块701,接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态。
抖动程度确定模块702,从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度。
作为一个例子,如图8所示,抖动程度确定模块702可包括:关键点提取子模块801、第一序列确定子模块802和抖动程度确定子模块803。
关键点提取子模块801,基于预设算法分别提取从待检测视频中选取的多帧图像中的至少一个关键点。
第一序列确定子模块802,确定所述多帧图像中所述至少一个关键点的位置,得到所述至少一个关键点在所述多帧图像中的位置参数序列。
抖动程度确定子模块803,基于所述位置参数序列确定所述待检测视频拍摄过程中的抖动程度。
其中,抖动程度确定子模块803,基于上述位置参数序列确定待检测视频拍摄过程中的抖动程度的方式可以有很多种,下面列举两种。
第一种
抖动程度确定子模块803,先确定上述位置参数序列中相邻两个位置参数的差值(该差值为横坐标差值和/或纵坐标差值),得到所述至少一个关键点在所述多帧图像中的位置参数差值序列;然后确定所述位置参数差值序列中相邻两个差值的正负符号变化次数;接下来,使用所述正负符号变化次数表征所述待检测视频拍摄过程中的抖动程度。
第二种
抖动程度确定子模块803,可以基于上述位置参数序列和预设分类模型,确定待检测视频拍摄过程中的抖动程度;其中,预设分类模型是基于抖动位置参数序列和非抖动位置参数序列训练得到的,抖动位置参数序列是基于抖动程度大于预设阈值的视频中多帧图像中至少一个关键点的位置确定的,非抖动位置参数序列是基于抖动程度小于或等于预设阈值的视频中多帧图像中至少一个关键点的位置确定的。
判断模块703,基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
当抖动程度确定模块702采用上述第一种方式确定待检测视频拍摄过程中的抖动程度时,判断模块703,可在所述抖动程度大于预设阈值时,确定待检测视频为真实拍摄的活体视频;在所述抖动程度小于或等于预设阈值时,确定待检测视频为注入攻击视频。
当抖动程度确定模块702采用上述第二种方式确定待检测视频拍摄过程中的抖动程度时,判断模块703,可在确定所述待检测视频有抖动时,确定所述待检测视频为真实拍摄的活体视频;在确定所述待检测视频无抖动时,确定所述待检测视频为注入攻击视频。
需要说明的是,图7所示的活体检测装置700能够实现图2的方法,并能取得相同的技术效果,详细内容可参考图2所示的方法,不再赘述。
可选地,本说明书实施例提供的一种活体检测装置700,还可以包括:活体检测模块和告警模块。
活体检测模块,在确定待检测视频为真实拍摄的活体视频的情况下,基于待检测视频进行活体检测。
告警模块,在确定待检测视频为注入攻击视频时情况下,发出注入视频攻击警告,和/或,提醒用户重新拍摄上传待检测视频。
可以理解,在确定待检测视频为注入攻击视频时情况下,发出注入视频攻击警告,和/或,提醒用户重新拍摄上传待检测视频,可以精准地防止注入视频攻击。
如图9所示,本说明书的一个实施例提供了一种辅助活体检测的装置900,在一种软件实施方式中,装置900可包括:待检测视频拍摄模块901和待检测视频上传模块902。
待检测视频拍摄模块901,在开启震动马达之后,拍摄待检测视频。
待检测视频上传模块902,将所述待检测视频上传至服务端。
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
需要说明的是,图9所示的辅助活体检测的装置900能够实现图4的方法,并能取得相同的技术效果,详细内容可参考图4所示的方法,不再赘述。
可选地,如图10所示,本说明书的一个实施例提供了一种辅助活体检测的装置900,在一种软件实施方式中,装置900可包括:初始化模块903、人脸检测模块904、判断模块905、马达开启模块906、待检测视频拍摄模块901和待检测视频上传模块902。
初始化模块903,初始化摄像头。
人脸检测模块904,执行人脸检测算法。
判断模块905,判断人脸的质量是否满足预设条件,若为是,触发马达开启模块906,否则,触发人脸检测模块904。
马达开启模块906,开启终端设备的震动马达。
待检测视频拍摄模块901,在开启震动马达之后,拍摄待检测视频。
待检测视频上传模块902,将所述待检测视频上传至服务端。
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
需要说明的是,图10所示的辅助活体检测的装置900能够实现图5的方法,并能取得相同的技术效果,详细内容可参考图5所示的方法,不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
总之,以上所述仅为本说明书的较佳实施例而已,并非用于限定本说明书的保护范围。凡在本说明书一个或多个实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例的保护范围之内。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制时,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
Claims (18)
1.一种活体检测方法,包括:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
2.根据权利要求1所述的方法,其中,所述基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,包括:
基于预设算法分别提取所述多帧图像中的至少一个关键点;
确定所述多帧图像中所述至少一个关键点的位置,得到所述至少一个关键点在所述多帧图像中的位置参数序列;
基于所述位置参数序列确定所述待检测视频拍摄过程中的抖动程度。
3.根据权利要求2所述的方法,
所述预设算法包括下述算法中的一种或多种:人脸关键点检测算法、尺度不变特征变换SIFT和加速稳健特征SURF。
4.根据权利要求2所述的方法,其中,所述基于所述位置参数序列确定所述待检测视频拍摄过程中的抖动程度,包括:
确定所述位置参数序列中相邻两个位置参数的差值,得到所述至少一个关键点在所述多帧图像中的位置参数差值序列;
确定所述位置参数差值序列中相邻两个差值的正负符号变化次数;
使用所述正负符号变化次数表征所述待检测视频拍摄过程中的抖动程度。
5.根据权利要求4所述的方法,其中,所述基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频,包括:
在所述抖动程度大于预设阈值时,确定所述待检测视频为真实拍摄的活体视频;
在所述抖动程度小于或等于预设阈值时,确定所述待检测视频为注入攻击视频。
6.根据权利要求2所述的方法,其中,所述基于所述位置参数序列确定所述待检测视频拍摄过程中的抖动程度,包括:
基于所述位置参数序列和预设分类模型,确定所述待检测视频拍摄过程中的抖动程度;
其中,所述预设分类模型是基于抖动位置参数序列和非抖动位置参数序列训练得到的,所述抖动位置参数序列是基于抖动程度大于预设阈值的视频中多帧图像中至少一个关键点的位置确定的,所述非抖动位置参数序列是基于抖动程度小于或等于预设阈值的视频中多帧图像中至少一个关键点的位置确定的。
7.根据权利要求6所述的方法,
所述预设分类算法包括支持向量机SVM和卷积神经网络CNN中的一种。
8.根据权利要求6所述的方法,其中,所述基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频,包括:
在确定所述待检测视频有抖动时,确定所述待检测视频为真实拍摄的活体视频;
在确定所述待检测视频无抖动时,确定所述待检测视频为注入攻击视频。
9.根据权利要求5或8所述的方法,还包括:
在确定所述待检测视频为真实拍摄的活体视频的情况下,基于所述待检测视频进行活体检测;
在确定所述待检测视频为注入攻击视频时情况下,发出注入视频攻击警告,和/或,提醒用户重新拍摄上传待检测视频。
10.根据权利要求1所述的方法,
所述待检测视频中包含人脸,且所述待检测视频是所述终端设备在检测到人脸的质量满足预设条件之后拍摄并上传的。
11.一种辅助活体检测的方法,包括:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
12.根据权利要求11所述的方法,所述待检测视频中包含人脸,在开启震动马达之前,所述方法还包括:
检测所述人脸的质量是否满足预设条件;
在检测到所述人脸的质量满足预设条件之后,再开启震动马达。
13.一种活体检测装置,包括:
待检测视频接收模块,接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
抖动程度确定模块,从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
判断模块,基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
14.一种辅助活体检测的装置,包括:
待检测视频拍摄模块,在开启震动马达之后,拍摄待检测视频;
待检测视频上传模块,将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
15.一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
16.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
接收终端设备拍摄并上传的待检测视频,其中,在所述终端设备拍摄所述待检测视频的过程中,所述终端设备的震动马达处于开启状态;
从所述待检测视频中按序选取多帧图像,并基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度;
基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
17.一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
18.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
在开启震动马达之后,拍摄待检测视频;
将所述待检测视频上传至服务端;
其中,所述服务端用于从所述待检测视频中按序选取多帧图像,基于所述多帧图像确定所述待检测视频拍摄过程中的抖动程度,并基于所述抖动程度判断所述待检测视频是否为真实拍摄的活体视频。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010943058.5A CN112215069A (zh) | 2020-09-09 | 2020-09-09 | 活体检测、辅助活体检测的方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010943058.5A CN112215069A (zh) | 2020-09-09 | 2020-09-09 | 活体检测、辅助活体检测的方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112215069A true CN112215069A (zh) | 2021-01-12 |
Family
ID=74049215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010943058.5A Pending CN112215069A (zh) | 2020-09-09 | 2020-09-09 | 活体检测、辅助活体检测的方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112215069A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113743196A (zh) * | 2021-07-23 | 2021-12-03 | 北京眼神智能科技有限公司 | 活体检测方法、装置及存储介质 |
TWI810548B (zh) * | 2021-04-15 | 2023-08-01 | 臺灣網路認證股份有限公司 | 整合影像處理及深度學習之活體辨識系統及其方法 |
-
2020
- 2020-09-09 CN CN202010943058.5A patent/CN112215069A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI810548B (zh) * | 2021-04-15 | 2023-08-01 | 臺灣網路認證股份有限公司 | 整合影像處理及深度學習之活體辨識系統及其方法 |
CN113743196A (zh) * | 2021-07-23 | 2021-12-03 | 北京眼神智能科技有限公司 | 活体检测方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108710847B (zh) | 场景识别方法、装置及电子设备 | |
CN108197586B (zh) | 脸部识别方法和装置 | |
US11210541B2 (en) | Liveness detection method, apparatus and computer-readable storage medium | |
WO2017185630A1 (zh) | 基于情绪识别的信息推荐方法、装置和电子设备 | |
WO2020018359A1 (en) | Three-dimensional living-body face detection method, face authentication recognition method, and apparatuses | |
CN107368827B (zh) | 字符识别方法及装置、用户设备、服务器 | |
CN110348270B (zh) | 影像物件辨识方法与影像物件辨识系统 | |
CN108875542B (zh) | 一种人脸识别方法、装置、系统及计算机存储介质 | |
CN109063776B (zh) | 图像再识别网络训练方法、装置和图像再识别方法及装置 | |
CN111079816A (zh) | 图像的审核方法、装置和服务器 | |
CN112215069A (zh) | 活体检测、辅助活体检测的方法、装置和设备 | |
KR20140045897A (ko) | 시각적 이미지 매칭을 기반으로 한 미디어 스트림 식별 장치 및 방법 | |
CN110705532B (zh) | 一种识别翻拍图像的方法、装置及设备 | |
CN113780212A (zh) | 用户身份核验方法、装置、设备及存储介质 | |
CN112417970A (zh) | 目标对象识别方法、装置和电子系统 | |
CN113505682A (zh) | 活体检测方法及装置 | |
CN112036311A (zh) | 基于眼部状态检测的图像处理方法、装置及存储介质 | |
CN110516572B (zh) | 一种识别体育赛事视频片段的方法、电子设备及存储介质 | |
CN106250755B (zh) | 用于生成验证码的方法及装置 | |
CN108289176B (zh) | 一种拍照搜题方法、搜题装置及终端设备 | |
CN116958795A (zh) | 翻拍图像的识别方法、装置、电子设备及存储介质 | |
Fourati et al. | Face anti-spoofing with image quality assessment | |
CN113850211A (zh) | 注入视频攻击检测方法和装置 | |
CN110012216A (zh) | 信息获取方法和装置、智能终端 | |
CN115004245A (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 |