活体检测方法、装置、计算机设备及存储介质
文献发布时间:2024-04-18 19:57:31
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种活体检测方法、装置、计算机设备及存储介质。
背景技术
刷掌识别技术是基于手掌特征进行身份识别的一种识别技术,在日常生活中的应用越来越广泛。为了刷掌识别技术的安全性,在刷掌识别过程中需要进行活体检测,以保证识别的手掌为活体手掌。
相关技术中,利用手掌外形或者掌纹等特征进行活体检测,但是使用高精度的手掌图像很容易仿造出与真实手掌相似的手掌外形和掌纹,进而难以区分活体手掌和非活体手掌,因此活体检测的准确性不够高。
发明内容
本申请实施例提供了一种活体检测方法、装置、计算机设备及存储介质,能够提高活体检测的准确性。所述技术方案如下。
一方面,提供了一种活体检测方法,所述方法包括:
获取第一手掌骨骼关节图像,所述第一手掌骨骼关节图像包括手掌骨骼和手掌骨骼之间的关节软组织;
对所述第一手掌骨骼关节图像进行超分辨率处理,得到第二手掌骨骼关节图像,所述第二手掌骨骼关节图像的分辨率大于所述第一手掌骨骼关节图像的分辨率;
对所述第二手掌骨骼关节图像进行特征提取,得到手掌特征;
基于所述手掌特征进行判别,得到判别结果,所述判别结果用于表示所述第一手掌骨骼关节图像是否为活体手掌骨骼关节图像,所述活体手掌骨骼关节图像是指通过对真实手掌进行拍摄得到的手掌骨骼关节图像。
另一方面,提供了一种活体检测装置,所述装置包括:
图像获取模块,用于获取第一手掌骨骼关节图像,所述第一手掌骨骼关节图像包括手掌骨骼和手掌骨骼之间的关节软组织;
超分辨率处理模块,用于对所述第一手掌骨骼关节图像进行超分辨率处理,得到第二手掌骨骼关节图像,所述第二手掌骨骼关节图像的分辨率大于所述第一手掌骨骼关节图像的分辨率;
活体检测模块,用于对所述第二手掌骨骼关节图像进行特征提取,得到手掌特征;
所述活体检测模块,还用于基于所述手掌特征进行判别,得到判别结果,所述判别结果用于表示所述第一手掌骨骼关节图像是否为活体手掌骨骼关节图像,所述活体手掌骨骼关节图像是指通过对真实手掌进行拍摄得到的手掌骨骼关节图像。
可选地,超分辨率模型包括第一特征提取网络、特征映射网络和图像重建网络;所述超分辨率处理模块,用于:
通过所述第一特征提取网络,对所述第一手掌骨骼关节图像进行特征提取,得到第一图像特征;
通过所述特征映射网络,对所述第一图像特征进行特征映射,得到第二图像特征,所述第二图像特征的维数大于所述第一图像特征的维数;
通过所述图像重建网络,基于所述第二图像特征进行图像重建,得到所述第二手掌骨骼关节图像。
可选地,所述装置还包括第一训练模块,用于:
获取第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像,所述第一样本手掌骨骼关节图像的内容和所述第二样本手掌骨骼关节图像的内容相同,所述第二样本手掌骨骼关节图像的分辨率大于所述第一样本手掌骨骼关节图像的分辨率;
通过所述第一特征提取网络,对所述第一样本手掌骨骼关节图像进行特征提取,得到第一样本图像特征;
通过所述特征映射网络,对所述第一样本图像特征进行特征映射,得到第二样本图像特征,所述第二样本图像特征的维数大于所述第一样本图像特征的维数;
通过所述图像重建网络,基于所述第二样本图像特征进行图像重建,得到预测手掌骨骼关节图像;
基于所述预测手掌骨骼关节图像和所述第二样本手掌骨骼关节图像之间的差异,训练所述超分辨率模型。
可选地,所述第一训练模块,用于:
基于所述预测手掌骨骼关节图像和所述第二样本手掌骨骼关节图像之间的差值,确定第一损失值;
基于所述第一损失值,训练所述超分辨率模型,以使通过训练后的超分辨率模型得到的第一损失值减小。
可选地,活体检测模型包括第二特征提取网络和分类网络;
所述对所述第二手掌骨骼关节图像进行特征提取,得到手掌特征的步骤,通过所述第二特征提取网络执行;
所述基于所述手掌特征进行判别,得到判别结果的步骤,通过所述分类网络执行。
可选地,所述装置还包括第二训练模块,用于:
获取第三样本手掌骨骼关节图像和样本标签结果,所述样本标签结果用于表示所述第三样本手掌骨骼关节图像是否为活体手掌骨骼关节图像的真实结果;
通过所述第二特征提取网络,对所述第三样本手掌骨骼关节图像进行特征提取,得到样本手掌特征;
通过所述分类网络,基于所述样本手掌特征进行判别,得到预测判别结果,所述预测判别结果用于表示所述第三样本手掌骨骼关节图像是否为活体手掌骨骼关节图像的预测结果;
基于所述预测判别结果和所述样本标签结果之间的差异,训练所述活体检测模型。
可选地,所述第二训练模块,用于:
获取原始手掌骨骼关节图像,所述原始手掌骨骼关节图像为未经超分辨率处理的图像;
将所述原始手掌骨骼关节图像确定为所述第三样本手掌骨骼关节图像;或者,对所述原始手掌骨骼关节图像进行超分辨率处理,得到所述第三样本手掌骨骼关节图像。
可选地,所述第二训练模块,用于:
在所述预测判别结果与所述样本标签结果一致的情况下,将第一数值确定为第二损失值,在所述预测判别结果与所述样本标签结果不一致的情况下,将第二数值确定为所述第二损失值,所述第二数值大于所述第一数值;
基于所述第二损失值,训练所述活体检测模型,以使通过训练后的活体检测模型得到的第二损失值减小。
可选地,所述第一手掌骨骼关节图像为刷掌设备采集到的图像;所述装置还包括:
标签结果获取模块,用于获取所述第一手掌骨骼关节图像的标签结果,所述标签结果用于表示所述第一手掌骨骼关节图像是否为活体手掌骨骼关节图像的真实结果;
训练样本确定模块,用于在所述判别结果与所述标签结果不一致的情况下,将所述第一手掌骨骼关节图像和所述标签结果确定为训练样本,或者将所述第二手掌骨骼关节图像和所述标签结果确定为训练样本;
第二训练模块,用于基于所述训练样本,训练所述活体检测模型。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以实现如上述方面所述的活体检测方法所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以实现如上述方面所述的活体检测方法所执行的操作。
另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序由处理器加载并执行,以实现如上述方面所述的活体检测方法所执行的操作。
本申请实施例提供的方案,利用手掌骨骼关节图像中的手掌骨骼和关节软组织进行手掌的活体检测,由于真实手掌的手掌骨骼和关节软组织具有极高的复杂性,导致手掌骨骼和关节软组织的仿造难度较高,仿造得到的非活体手掌骨骼关节图像和真实的活体手掌骨骼关节图像之间的差别较大,因此利用手掌骨骼关节图像进行活体检测的准确性较高,并且考虑到手掌骨骼关节图像所包含的细节信息较多,还额外对手掌骨骼关节图像进行超分辨率处理,得到分辨率更高的手掌骨骼关节图像,利用分辨率更高的手掌骨骼关节图像进行活体检测,使得活体检测过程不会忽略掉细节信息,进一步提高了活体检测的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图。
图2是本申请实施例提供的一种活体检测方法的流程图。
图3是本申请实施例提供的另一种活体检测方法的流程图。
图4是本申请实施例提供的一种刷掌设备的示意图。
图5是本申请实施例提供的一种超分辨率处理方法的示意图。
图6是本申请实施例提供的一种卷积方法的示意图。
图7是本申请实施例提供的一种超分辨率模型的训练方法的流程图。
图8是本申请实施例提供的一种活体检测模型的训练方法的流程图。
图9是本申请实施例提供的一种活体检测方法的架构图。
图10是本申请实施例提供的一种活体检测装置的结构示意图。
图11是本申请实施例提供的另一种活体检测装置的结构示意图。
图12是本申请实施例提供的一种终端的结构示意图。
图13是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本申请的范围的情况下,可以将第一手掌骨骼关节图像称为第二手掌骨骼关节图像,且类似地,可将第二手掌骨骼关节图像称为第一手掌骨骼关节图像。
其中,至少一个是指一个或者一个以上,例如,至少一个图像可以是一个图像、两个图像、三个图像等任一大于等于一的整数个图像。多个是指两个或者两个以上,例如,多个图像可以是两个图像、三个图像等任一大于等于二的整数个图像。每个是指至少一个中的每一个,例如,每个图像是指多个图像中的每一个图像,若多个图像为3个图像,则每个图像是指3个图像中的每一个图像。
在本申请中,涉及到的刷掌识别技术,在本申请以上实施例运用到具体产品或技术中时,相关数据收集、使用和处理过程应该遵守国家法律法规要求,收集手掌骨骼关节图像前告知信息处理规则并征求目标对象的单独同意,并严格遵照法律法规要求和个人信息处理规则处理人脸信息,采取技术措施保障相关数据安全。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互系统、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。预训练模型是深度学习的最新发展成果,融合了以上技术。
计算机视觉技术(Computer Vision,CV)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。大模型技术为计算机视觉技术发展带来重要变革,Swin-Transformer、ViT(Vision Transformer,视觉转换器)、V-MoE(Vision MoE)、MAE(Masked Auto Encoder,掩蔽自编码器)等视觉领域的预训练模型经过微调(Fine Tune)可以快速、广泛适用于下游具体任务。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR(Optical Character Recognition,光学字符识别)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D(3 Dimensions,三维)技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的生物特征识别技术。
以下将基于人工智能技术和计算机视觉技术,对本申请实施例提供的活体检测方法进行说明。
本申请实施例提供的活体检测方法,能够用于计算机设备中。可选地,该计算机设备为终端或服务器。可选地,该服务器是独立的物理服务器,或者,是多个物理服务器构成的服务器集群或者分布式系统,或者,是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器。可选地,该终端是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、智能终端等,但并不局限于此。
在一种可能实现方式中,本申请实施例所涉及的计算机程序可被部署在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备能够组成区块链系统。
在一种可能实现方式中,本申请实施例中用于训练超分辨率模型和活体检测模型的计算机设备是区块链系统中的节点,该节点能够将训练的超分辨率模型和活体检测模型存储在区块链中,之后该节点或者该区块链中的其他设备对应的节点可通过该超分辨率模型对图像进行超分辨率处理,或者通过该活体检测模型对图像进行活体检测。
图1是本申请实施例提供的一种实施环境的示意图,参见图1,该实施环境包括:刷掌设备101和服务器102。刷掌设备101和服务器102之间通过无线或有线网络连接。刷掌设备101采集第一手掌骨骼关节图像,将第一手掌骨骼关节图像发送给服务器102,服务器102采用本申请实施例提供的方法,对第一手掌骨骼关节图像进行超分辨率处理,得到第二手掌骨骼关节图像,基于第二手掌骨骼关节图像进行活体检测,得到判别结果,该判别结果用于表示该第一手掌骨骼关节图像是否为活体手掌骨骼关节图像。
可选地,在判别结果表示第一手掌骨骼关节图像为非活体手掌骨骼关节图像的情况下,服务器102向刷掌设备101发送识别错误消息,由刷掌设备101向用户展示识别错误消息,以提示用户未通过刷掌识别。在判别结果表示第一手掌骨骼关节图像为活体手掌骨骼关节图像的情况下,服务器102可以进一步基于该第一手掌骨骼关节图像进行身份识别,如果识别通过则向刷掌设备101返回识别成功消息,如果识别未通过则向刷掌设备101返回识别错误消息。
本申请实施例提供的活体检测方法,可以应用于检测活体手掌的任一场景下。
例如,在刷掌支付的场景下,为了确认进行支付的用户的真实身份,采用了刷掌识别技术,在刷掌识别过程中进行活体检测。首先用户在刷掌设备上进行刷掌,由刷掌设备采集手掌骨骼关节图像,然后采用本申请实施例提供的方法,对手掌骨骼关节图像进行活体检测,如果根据活体检测结果确定该手掌骨骼关节图像为活体手掌骨骼关节图像,则可以进一步基于该手掌骨骼关节图像进行身份识别,识别成功后即可自动扣除待支付的费用,完成刷掌支付,如果根据活体检测结果确定该手掌骨骼关节图像为非活体手掌骨骼关节图像,则刷掌支付失败。
除此之外,本申请实施例提供的活体检测方法,还可以应用于门禁系统、安全认证系统、智能交通系统或者需要认证用户身份的其他系统等,来确保刷掌识别过程中的安全性。
图2是本申请实施例提供的一种活体检测方法的流程图,本申请实施例由计算机设备执行,参见图2,该方法包括以下步骤。
201、计算机设备获取第一手掌骨骼关节图像,第一手掌骨骼关节图像包括手掌骨骼和手掌骨骼之间的关节软组织。
计算机设备获取第一手掌骨骼关节图像,该第一手掌骨骼关节图像是用户进行刷掌得到的。本申请实施例中需要对第一手掌骨骼关节图像进行活体检测,活体检测是一种生物识别技术,目的是在用户刷掌过程中验证采集到的第一手掌骨骼关节图像是否为活体手掌骨骼关节图像,活体手掌骨骼关节图像是指通过对真实手掌进行拍摄得到的手掌骨骼关节图像,也即是检测用户刷掌过程中所使用的手掌是否是真实的手掌,而不是手掌模型或者手掌照片等仿制品。
其中,该第一手掌骨骼关节图像包括手掌骨骼和手掌骨骼之间的关节软组织,手掌骨骼和关节软组织的形状、尺寸、质地等特征可以用于活体检测。
202、计算机设备对第一手掌骨骼关节图像进行超分辨率处理,得到第二手掌骨骼关节图像,第二手掌骨骼关节图像的分辨率大于第一手掌骨骼关节图像的分辨率。
计算机设备在获取到第一手掌骨骼关节图像后,对该第一手掌骨骼关节图像进行超分辨率处理,超分辨率处理是指将低分辨率图像重建为高分辨率图像的技术,能够提高图像的清晰度和细节。因此通过超分辨率处理得到的第二手掌骨骼关节图像的分辨率大于第一手掌骨骼关节图像的分辨率,除了分辨率之外,该第二手掌骨骼关节图像的内容与该第一手掌骨骼关节图像的内容相同。
在一种可能实现方式中,计算机设备可以通过超分辨率模型对第一手掌骨骼关节图像进行超分辨率处理,例如该超分辨率模型可以为SRCNN(Super ResolutionConvolutional Neural Network,超分辨率卷积神经网络)、CNN(Convolutional NeuralNetwork,卷积神经网络)、VIT(Vision Transformer,视觉转换器)等。其中,通过超分辨率模型进行超分辨率处理的过程可参见下述图3所示的实施例,在此暂不做详细说明。在另一种可能实现方式中,计算机设备还可以采用基于重建的超分辨率算法或者增强边缘超分辨率算法进行超分辨率处理,本申请实施例对此不做限定。
203、计算机设备对第二手掌骨骼关节图像进行特征提取,得到手掌特征。
由于第二手掌骨骼关节图像的内容与第一手掌骨骼关节图像的内容相同,因此对第二手掌骨骼关节图像进行活体检测的结果即可表示对第一手掌骨骼关节图像进行活体检测的结果,并且第二手掌骨骼关节图像的分辨率大于第一手掌骨骼关节图像的分辨率,计算机设备更容易捕捉到第二手掌骨骼关节图像中的细节信息,因此本申请实施例中通过对第二手掌骨骼关节图像进行活体检测来确定第一手掌骨骼关节图像是否为活体手掌骨骼关节图像。
计算机设备对第二手掌骨骼关节图像进行特征提取,得到手掌特征,该手掌特征用于表示第二手掌骨骼关节图像中的手掌骨骼和关节软组织的特征,例如手掌骨骼和关节软组织的形状、尺寸或者质地等。
204、计算机设备基于手掌特征进行判别,得到判别结果,判别结果用于表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像,活体手掌骨骼关节图像是指通过对真实手掌进行拍摄得到的手掌骨骼关节图像。
由于手掌特征能够表示手掌骨骼关节图像中的手掌骨骼和关节软组织的特征,而活体手掌骨骼关节图像中的手掌骨骼和关节软组织的特征与非活体手掌骨骼关节图像中的手掌骨骼和关节软组织的特征之间存在区别,因此计算机设备可以基于该手掌特征进行判别,得到判别结果,该判别结果用于表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像。也即是,根据该判别结果即可确定第一手掌骨骼关节图像是否是通过对真实手掌进行拍摄得到的手掌骨骼关节图像。
由于第二手掌骨骼关节图像是对第一手掌骨骼关节图像进行超分辨率处理得到的图像,第二手掌骨骼关节图像的内容与第一手掌骨骼关节图像的内容相同,因此基于第二手掌骨骼关节图像的手掌特征所得到的判别结果能够表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像。
本申请实施例提供的方法,利用手掌骨骼关节图像中的手掌骨骼和关节软组织进行手掌的活体检测,由于真实手掌的手掌骨骼和关节软组织具有极高的复杂性,导致手掌骨骼和关节软组织的仿造难度较高,仿造得到的非活体手掌骨骼关节图像和真实的活体手掌骨骼关节图像之间的差别较大,因此利用手掌骨骼关节图像进行活体检测的准确性较高,并且考虑到手掌骨骼关节图像所包含的细节信息较多,还额外对手掌骨骼关节图像进行超分辨率处理,得到分辨率更高的手掌骨骼关节图像,利用分辨率更高的手掌骨骼关节图像进行活体检测,使得活体检测过程不会忽略掉细节信息,进一步提高了活体检测的准确性。
上述图2的实施例仅是对活体检测方法的简要说明,该活体检测方法的更为详细的过程,可参见下述图3所示的实施例。
图3是本申请实施例提供的另一种活体检测方法的流程图,本申请实施例由计算机设备执行,参见图3,该方法包括以下步骤。
301、计算机设备获取第一手掌骨骼关节图像,第一手掌骨骼关节图像包括手掌骨骼和手掌骨骼之间的关节软组织。
计算机设备获取第一手掌骨骼关节图像。在一种可能实现方式中,该计算机设备为刷掌设备,该第一手掌骨骼关节图像是该计算机设备在用户刷掌过程中采集到的手掌关节图像。在另一种可能实现方式中,计算机设备为服务器,该服务器与刷掌设备之间具有通信连接,刷掌设备在用户刷掌过程中采集到第一手掌骨骼关节图像后,将该第一手掌骨骼关节图像发送给该计算机设备。
可选地,刷掌设备可以为X光摄像机、磁共振成像设备或者超声波造影设备等,以X光摄像机为例,X光摄像机对用户手掌的骨骼和关节软组织进行造影,得到手掌骨骼关节图像。除此之外,该刷掌设备还可以内置红外相机或者深度传感器等硬件,来采集手掌骨骼关节图像。
以刷掌设备为X光摄像机为例,图4是本申请实施例提供的一种刷掌设备的示意图,如图4所示,刷掌设备包括发光组件和成像组件,发光组件位于上方,成像组件位于下方,发光组件和成像组件之间存在一定空间,在刷掌时,用户将手掌伸入发光组件和成像组件之间的空间,发光组件向下发射X光,穿透用户手掌后,由下方的成像组件接收并成像,从而得到手掌骨骼关节图像。其中,X光的成像原理是通过将X射线穿过物体,从而产生透射图像来获取物体内部的结构和信息。X射线在人体组织中的传播和吸收是根据组织密度的不同而有所区别的,比如骨骼以及关节软组织对X射线有较大的吸收能力,所以在X光影像中,骨骼和关节软组织表现为白色或灰色,因此能够清晰地捕捉到骨骼和关节软组织的影像。另外,在刷掌过程中,由于手掌骨骼和关节软组织在不同的角度和姿态下都有不同的形态变化,此外,手掌骨骼和关节软组织还会受到拍摄角度、光线以及手的遮挡等因素的影响,因此,在采集到手掌骨骼关节图像后,还可以对该手掌骨骼关节图像的质量进行判断,以判断手掌骨骼关节图像是否清晰和完整,如果手掌骨骼关节图像的质量未达到标准,还可以提示用户调整手掌角度,重新采集手掌骨骼关节图像。
本申请实施例中,利用手掌骨骼关节图像在刷掌过程中进行活体检测,相比于手掌的掌纹或者血管等特征,真实手掌中的骨骼和关节软组织具有极高的复杂性和不可复制性,特别是关节软组织,几乎难以仿造,制作具备类似真实手掌中的骨骼和关节软组织的手掌模型十分困难。一方面,由于仿制难度大,提高了手掌模型的仿制成本,降低了攻击者进行攻击的可能性,另一方面,由于仿制难度大,导致制作得到的手掌模型中的骨骼和关节软组织与真实手掌中的骨骼和关节软组织的差异也比较大,降低了区分活体手掌骨骼关节图像和非活体手掌骨骼关节图像的难度,进而提高了活体检测的准确性。
302、计算机设备通过超分辨率模型,对第一手掌骨骼关节图像进行超分辨率处理,得到第二手掌骨骼关节图像,第二手掌骨骼关节图像的分辨率大于第一手掌骨骼关节图像的分辨率。
本申请实施例中,计算机设备通过超分辨率模型进行超分辨率处理,将第一手掌骨骼关节图像输入超分辨率模型,超分辨率模型输出第二手掌骨骼关节图像。例如该超分辨率模型为SRCNN,SRCNN是一种基于CNN构建的用于对图像进行超分辨率处理的算法模型。其中,该超分辨率模型的训练过程,可参见下述图7所示的实施例,在此暂不作说明。
在一种可能实现方式中,超分辨率模型包括第一特征提取网络、特征映射网络和图像重建网络。则计算机设备通过超分辨率模型进行超分辨率处理的过程,包括下述步骤3021-步骤3023。
3021、计算机设备通过第一特征提取网络,对第一手掌骨骼关节图像进行特征提取,得到第一图像特征。
其中,该第一特征提取网络由卷积网络构成,卷积网络可以看作过滤器。1个过滤器是1个二维矩阵,过滤器的个数与第一手掌骨骼关节图像的维数相等。可选地,第一手掌骨骼关节图像为一维图像,例如灰度图像,则第一特征提取网络由1个二维矩阵构成。可选地,第一手掌骨骼关节图像为三维图像,例如RGB图像,则第一特征提取网络由3个二维矩阵构成。可选地,每个过滤器还对应有偏置矩阵。计算机设备使用过滤器对第一手掌骨骼关节图像进行卷积处理,将卷积处理的结果与偏置矩阵进行融合,得到第一图像特征。
例如,参见图5,第一手掌骨骼关节图像501的尺寸为f1×f1×n1,第一特征提取网络中的过滤器的尺寸为f2×f2×n1,且过滤器还对应有尺寸为f2×f2×n1的偏置矩阵,计算机设备利用过滤器对第一手掌骨骼关节图像501进行卷积,将卷积结果与偏置矩阵相加,得到第一图像特征502,第一图像特征502的尺寸为f3×f3×n1。其中,f3的大小取决于第一手掌骨骼关节图像501的尺寸、过滤器的尺寸以及卷积步长。
可选地,计算机设备通过第一特征提取网络,对第一手掌骨骼关节图像进行特征提取,得到第一图像特征的过程,可由下述公式(1)表示。
;公式(1)
其中,
3022、计算机设备通过特征映射网络,对第一图像特征进行特征映射,得到第二图像特征,第二图像特征的维数大于第一图像特征的维数。
该特征映射网络由卷积网络构成,卷积网络可以看作过滤器,1个过滤器是1个二维矩阵。该特征映射网络可以看作由多组过滤器组成,每组过滤器的个数与第一图像特的维数相等。可选地,第一图像特征为一维图像,则每组过滤器由1个二维矩阵构成。可选地,第一图像特征为三维图像,则每组过滤器的由3个二维矩阵构成。可选地,每个过滤器还对应有偏置矩阵。计算机设备使用过滤器对第一图像特征进行卷积处理,将卷积处理的结果与偏置矩阵进行融合,得到第二图像特征。
例如,参见图5,第一图像特征502的尺寸为f3×f3×n1,特征映射网络的过滤器的尺寸为f4×f4×n1×n2,且过滤器还对应有尺寸为f4×f4×n1×n2的偏置矩阵,计算机设备利用过滤器对第一图像特征502进行卷积,将卷积结果与偏置矩阵相加,得到第二图像特征503,第二图像特征503的尺寸为f5×f5×n1×n2。其中,f4的大小取决于第一图像特征502的尺寸、过滤器的尺寸以及卷积步长。
可选地,计算机设备通过特征映射网络,对第一图像特征进行特征映射,得到第二图像特征的过程,可由下述公式(2)表示。
;公式(2)
其中,
3023、计算机设备通过图像重建网络,基于第二图像特征进行图像重建,得到第二手掌骨骼关节图像。
其中,第一图像特征的维数与第一手掌骨骼关节图像的维数相等,第二图像特征的维数大于第一图像特征的维数,也即是第二图像特征的维数大于第一手掌骨骼关节图像的维数。另外,通过设置过滤器的尺寸和卷积步长,可以使第二图像特征在每一维上的尺寸等于第一手掌骨骼关节图像在每一维上的尺寸,那么将第二图像特征中多个维数上的特征进行合并,使得得到的图像的维数等于第一手掌骨骼关节图像的维数,从而得到第二手掌骨骼关节图像。
可选地,该图像重建网络可以以取均值的方式,基于多个维数上的特征确定合并后的维数上的特征。或者该图像重建网络可以以卷积处理的方式,基于多个维数上的特征确定合并后的维数上的特征。例如,该图像重建网络由卷积网络构成,卷积网络可以看作过滤器,1个过滤器是1个二维矩阵。参见图5,第二图像特征503的尺寸为f5×f5×n1×n2,图像重建网络的过滤器的尺寸为f6×f6×n1×n2,且过滤器还对应有尺寸为f6×f6×n1×n2的偏置矩阵,计算机设备利用过滤器对第二图像特征503进行卷积,将卷积结果与偏置矩阵相加,得到第二手掌骨骼关节图像504,第二手掌骨骼关节图像504的尺寸为f7×f7×n1。其中,f7的大小取决于第二图像特征503的尺寸、过滤器的尺寸以及卷积步长。可选地,通过设置过滤器的尺寸和卷积步长,可以使第二手掌骨骼关节图像504在每一维上的尺寸等于第一手掌骨骼关节图像501在每一维上的尺寸。在上述n1等于1的情况下,手掌骨骼关节图像为1维图像,在上述n1等于3的情况下,手掌骨骼关节图像为3维图像。
可选地,计算机设备通过图像重建网络,基于第二图像特征进行图像重建,得到第二手掌骨骼关节图像的过程,可由下述公式(3)表示。
;公式(3)
其中,
综上所述,上述步骤3021-步骤3023中均用到了卷积操作,卷积操作的运算过程可参见图6,图6是本申请实施例提供的一种卷积方法的示意图,如图6所示,左侧的大矩阵为输入数据601(例如第一手掌骨骼关节图像、第一图像特征或者第二图像特征),每个数值表示一个像素点的像素值。右侧的小矩阵为过滤器602,每个数值表示过滤器的参数。过滤器602对输入数据601中与该过滤器602的尺寸相同的部分进行卷积,得到一个数值,该数值表示卷积结果中的一个像素点的像素值。通过设置不同的卷积步长,在输入数据601中可以划分出不同数量的区域与过滤器602分别做卷积,多个区域的卷积结果组成了整个输入数据601与过滤器602的卷积结果。
本申请实施例中,一方面为了降低对刷掌环境的要求、降低刷掌设备的成本以及降低网络传输压力,由刷掌设备采集分辨率较低的第一手掌骨骼关节图像,另一方面,考虑到直接利用分辨率较低的第一手掌骨骼关节图像进行活体检测可能会忽略掉图像中的较多细节信息,因此在得到第一手掌骨骼关节图像后,对第一手掌骨骼关节图像进行超分辨率处理,得到分辨率较高的第二手掌骨骼关节图像,后续利用第二手掌骨骼关节图像进行活体检测,使得活体检测的过程能够依赖于更多的细节信息,有利于提高活体检测的准确性。
303、计算机设备通过活体检测模型,对第二手掌骨骼关节图像进行特征提取,得到手掌特征。
本申请实施例中,计算机设备通过活体检测模型进行活体检测,将第二手掌骨骼关节图像输入活体检测模型,由活体检测模型输出判别结果。例如,该活体检测模型为CNN。其中,该活体检测模型的训练过程,可参见下述图8所示的实施例,在此暂不作说明。
其中,该活体检测模型包括第二特征提取网络,计算机设备将第二手掌骨骼关节图像输入活体检测模型后,由活体检测模型中的第二特征提取网络对第二手掌骨骼关节图像进行特征提取,得到手掌特征。
在一种可能实现方式中,该第二特征提取网络包括卷积层和池化层,卷积层对第二手掌骨骼关节图像进行卷积处理,得到卷积结果,然后池化层再对该卷积结果进行池化处理以降低维数,从而得到手掌特征,该手掌特征用于表示第二手掌骨骼关节图像中的手掌骨骼和关节软组织的特征,例如手掌骨骼和关节软组织的形状、尺寸或者质地等。
304、计算机设备通过活体检测模型,基于手掌特征进行判别,得到判别结果,判别结果用于表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像,活体手掌骨骼关节图像是指通过对真实手掌进行拍摄得到的手掌骨骼关节图像。
其中,该活体检测模型包括分类网络,活体检测模型中的第二特征提取网络在得到手掌特征后,将手掌特征输入分类网络,计算机设备通过该分类网络,基于手掌特征进行判别,得到判别结果。由于手掌特征能够表示手掌骨骼关节图像中的手掌骨骼和关节软组织的特征,而活体手掌骨骼关节图像中的手掌骨骼和关节软组织的特征与非活体手掌骨骼关节图像中的手掌骨骼和关节软组织的特征之间存在区别,因此分类网络可以基于该手掌特征进行判别,得到判别结果。
在一种可能实现方式中,该分类网络为softmax(一种激活函数)分类器,本申请实施例对此不做限定。
在一种可能实现方式中,该判别结果为0到1之间的数值,表示第一手掌骨骼关节图像为活体手掌骨骼关节图像的概率。在判别结果大于目标阈值的情况下,可以认为第一手掌骨骼关节图像为活体手掌骨骼关节图像,在判别结果不大于目标阈值的情况下,可以认为第一手掌骨骼关节图像为非活体手掌骨骼关节图像,该目标阈值为0到1之间的数值,例如该目标阈值为0.5、0.6或者0.7等。
在一种可能实现方式中,该分类网络为二分类网络。判别结果为0或者1,在判别结果为0的情况下,表示第一手掌骨骼关节图像为非活体手掌骨骼关节图像。在判别结果为1的情况下,表示第一手掌骨骼关节图像为活体手掌骨骼关节图像。
305、计算机设备获取第一手掌骨骼关节图像的标签结果,标签结果用于表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像的真实结果。
第一手掌骨骼关节图像为刷掌设备采集到的图像,上述步骤301-步骤304是计算机设备对该第一手掌骨骼关节图像进行活体检测的过程,也是活体检测模型对第二手掌骨骼关节图像进行活体检测的过程。除了利用活体检测模型对第二手掌骨骼关节图像进行活体检测来确定第一手掌骨骼关节图像是否为活体手掌骨骼关节图像之外,还可以采用人工判断的方式确定第一手掌骨骼关节图像是否为活体手掌骨骼关节图像,采用人工判断的方式确定的结果可以称为第一手掌骨骼关节图像的标签结果,该标签结果用于表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像的真实结果,也即是该标签结果是准确的,不会出错。
306、计算机设备在判别结果与标签结果不一致的情况下,将第一手掌骨骼关节图像和标签结果确定为训练样本,或者将第二手掌骨骼关节图像和标签结果确定为训练样本。
计算机设备将活体检测模型得到的判别结果与准确的标签结果进行对比,如果判别结果与标签结果不一致,说明活体检测模型的活体检测过程出现错误则计算机设备将第一掌骨骼关节图像和标签结果确定为训练样本,或者将第二手掌骨骼关节图像和标签结果确定为训练样本。
其中,判别结果与标签结果不一致是指判别结果所表示的情况与标签结果所表示的情况不同。例如,判别结果表示第一手掌骨骼关节图像为活体手掌骨骼关节图像,但标签结果表示第一手掌骨骼关节图像为非活体手掌骨骼关节图像。或者,判别结果表示第一手掌骨骼关节图像为非活体手掌骨骼关节图像,但标签结果表示第一手掌骨骼关节图像为活体手掌骨骼关节图像。
307、计算机设备基于训练样本,训练活体检测模型。
本申请实施例中,由于无法预测所有可能的攻击方式和仿制手掌类型,因此训练得到的活体检测模型存在过拟合的风险,进而存在活体检测模型对手掌骨骼关节图像的判别结果出现错误的情况。而在活体检测模型对手掌骨骼关节图像的判别结果出现错误的情况下,说明该手掌骨骼关节图像中的一些特征还未被活体检测模型学习到,因此将该手掌骨骼关节图像和对应的标签结果作为训练样本,利用真实的刷掌环境中采集到的训练样本,继续训练活体检测模型,从而对活体检测模型进行持续地训练和调优,以提高活体检测模型的泛化能力和准确性。其中,基于训练样本训练活体检测模型的过程,可参见下述图8所示的实施例。
本申请实施例提供的方法,利用手掌骨骼关节图像中的手掌骨骼和关节软组织进行手掌的活体检测,由于真实手掌的手掌骨骼和关节软组织具有极高的复杂性,导致手掌骨骼和关节软组织的仿造难度较高,仿造得到的非活体手掌骨骼关节图像和真实的活体手掌骨骼关节图像之间的差别较大,因此利用手掌骨骼关节图像进行活体检测的准确性较高,并且考虑到手掌骨骼关节图像所包含的细节信息较多,还额外对手掌骨骼关节图像进行超分辨率处理,得到分辨率更高的手掌骨骼关节图像,利用分辨率更高的手掌骨骼关节图像进行活体检测,使得活体检测过程不会忽略掉细节信息,进一步提高了活体检测的准确性。
并且,本申请实施例中基于手掌骨骼进而关节软组织进行活体检测,相比于基于掌纹等特征进行活体检测,更加不容易被伪造和攻破,能够有效避免生物识别技术被盗用或者被破解的风险,提高了生物识别技术的可靠性和安全性。
图7是本申请实施例提供的一种超分辨率模型的训练方法的流程图,本申请实施例由计算机设备执行,参见图7,该方法包括以下步骤。
701、计算机设备获取第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像,第一样本手掌骨骼关节图像的内容和第二样本手掌骨骼关节图像的内容相同,第二样本手掌骨骼关节图像的分辨率大于第一样本手掌骨骼关节图像的分辨率。
该第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像除了分辨率不同之外,其他内容均相同。因此可以利用该第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像对超分辨率模型进行监督训练。
其中,该第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像可以为活体手掌骨骼关节图像,也可以为非活体手掌骨骼关节图像,本申请实施例对此不作限定。
702、计算机设备通过超分辨率模型中的第一特征提取网络,对第一样本手掌骨骼关节图像进行特征提取,得到第一样本图像特征。
703、计算机设备通过超分辨率模型中的特征映射网络,对第一样本图像特征进行特征映射,得到第二样本图像特征,第二样本图像特征的维数大于第一样本图像特征的维数。
704、计算机设备通过超分辨率模型中的图像重建网络,基于第二样本图像特征进行图像重建,得到预测手掌骨骼关节图像。
该步骤702-步骤704中对第一样本手掌骨骼关节图像进行处理得到预测手掌骨骼关节图像的过程,与上述步骤3021-步骤3023中对第一手掌骨骼关节图像进行处理得到第二手掌骨骼关节图像的过程同理,在此不再赘述。
705、计算机设备基于预测手掌骨骼关节图像和第二样本手掌骨骼关节图像之间的差异,训练超分辨率模型。
预测手掌骨骼关节图像是超分辨率模型预测得到的分辨率更高的图像,第二样本手掌骨骼关节图像是真实的分辨率更高的图像,那么预测手掌骨骼关节图像与第二样本手掌骨骼关节图像之间的差异越小,则预测手掌骨骼关节图像越准确,也即是超分辨率模型越准确,因此计算机设备基于预测手掌骨骼关节图像和第二样本手掌骨骼关节图像之间的差异,训练超分辨率模型,以使基于超分辨率模型得到的预测手掌骨骼关节图像与第二样本手掌骨骼关节图像之间的差异减小。
在一种可能实现方式中,计算机设备基于预测手掌骨骼关节图像和第二样本手掌骨骼关节图像之间的差值,确定第一损失值,基于第一损失值,训练超分辨率模型,以使通过训练后的超分辨率模型得到的第一损失值减小。
需要说明的是,为了训练超分辨率模型,计算机设备先获取训练样本集,该训练样本集包括多对样本手掌骨骼关节图像。基于训练样本集训练超分辨率模型的过程包括多次迭代过程,在每次迭代过程中,基于至少一对样本手掌骨骼关节图像来进行训练,本申请实施例仅以一对第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像为例进行说明。
在训练超分辨率模型的过程中,需要进行多次迭代。在一种可能实现方式中,响应于迭代轮次达到第一阈值,停止对该超分辨率模型进行训练;或者,响应于当前迭代轮次得到的第一损失值不大于第二阈值,停止对超分辨率模型进行训练。其中,第一阈值和第二阈值均为任意的数值。
本申请实施例提供的方法,在训练超分辨率模型的过程中,采用第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像作为监督学习的训练样本,基于超分辨率模型预测得到的预测手掌骨骼关节图像和第二样本手掌骨骼关节图像之间的差异,训练超分辨率模型,使得超分辨率模型学习到如何根据分辨率较低的手掌骨骼关节图像重建分辨率较高的手掌骨骼关节图像,从而提高了超分辨率模型的准确性。进而,后续在实际应用中使用训练完成的超分辨率模型进行超分辨率处理,提高了对手掌骨骼关节图像进行超分辨率处理的便捷性和效率。
图8是本申请实施例提供的一种活体检测模型的训练方法的流程图,本申请实施例由计算机设备执行,参见图8,该方法包括以下步骤。
801、计算机设备获取第三样本手掌骨骼关节图像和样本标签结果,样本标签结果用于表示第三样本手掌骨骼关节图像是否为活体手掌骨骼关节图像的真实结果。
计算机设备第三样本手掌骨骼关节图像和对应的样本标签结果。其中,该第三样本手掌骨骼关节图像可以为活体样本手掌骨骼关节图像,则样本标签结果用于表示第三样本手掌骨骼关节图像为活体手掌骨骼关节图像,例如将数值1确定为样本标签结果。该第三样本手掌骨骼关节图像可以为非活体样本手掌骨骼关节图像,则样本标签结果用于表示第三样本手掌骨骼关节图像为非活体手掌骨骼关节图像,例如将数值0确定为样本标签结果。
例如,在第三样本手掌骨骼关节图像为非活体样本手掌骨骼关节图像的情况下,可以对高精度手掌模型、没有骨骼和关节的手掌模型、有简单的内置骨骼的手掌模型以及使用其他材料(金属、木材等)作为骨骼的手掌模型进行拍摄,得到该第三样本手掌骨骼关节图像,组成非活体手掌骨骼关节图像的训练样本,以使活体检测模型学习到非活体手掌骨骼关节图像的特征。
例如,在第三样本手掌骨骼关节图像为活体样本手掌骨骼关节图像的情况下,可以对不同性别、不同年龄、不同大小的人的真实手掌进行拍摄,得到第三样本手掌骨骼关节图像,组成活体手掌骨骼关节图像的训练样本,以使活体检测模型学习到活体手掌骨骼关节图像的特征。
在一种可能实现方式中,计算机设备获取原始手掌骨骼关节图像,原始手掌骨骼关节图像为未经超分辨率处理的图像。计算机设备将原始手掌骨骼关节图像确定为第三样本手掌骨骼关节图像。或者,计算机设备对原始手掌骨骼关节图像进行超分辨率处理,得到第三样本手掌骨骼关节图像。
也即是,活体检测模型的训练样本,可以为经过超分辨率处理的手掌骨骼关节图像,也可以为未经过超分辨率处理的手掌骨骼关节图像。
在一种可能实现方式中,该第三样本手掌骨骼关节图像和样本标签结果,还可以为上述步骤305-步骤307中所获取到的训练样本。
802、计算机设备通过第二特征提取网络,对第三样本手掌骨骼关节图像进行特征提取,得到样本手掌特征。
803、计算机设备通过分类网络,基于样本手掌特征进行判别,得到预测判别结果,预测判别结果用于表示第三样本手掌骨骼关节图像是否为活体手掌骨骼关节图像的预测结果。
上述步骤802-步骤803中对第三样本手掌骨骼关节图像进行处理得到预测判别结果的过程,与上述步骤303-步骤304中对第二手掌骨骼关节图像进行处理得到判别结果的过程同理,在此不再赘述。
804、计算机设备基于预测判别结果和样本标签结果之间的差异,训练活体检测模型。
预测判别结果是活体检测模型预测得到的结果,样本标签结果是真实的结果,那么预测判别结果和样本标签结果之间的差异越小,则预测判别结果越准确,也即是活体检测模型越准确,因此计算机设备基于预测判别结果和样本标签结果之间的差异,训练活体检测模型,以使基于活体检测模型得到的预测判别结果和样本标签结果之间的差异减小。
在一种可能实现方式中,计算机设备在预测判别结果与样本标签结果一致的情况下,将第一数值确定为第二损失值,在预测判别结果与样本标签结果不一致的情况下,将第二数值确定为第二损失值,第二数值大于第一数值。计算机设备基于第二损失值,训练活体检测模型,以使通过训练后的活体检测模型得到的第二损失值减小。
其中,预测判别结果与样本标签结果一致是指判别结果所表示的情况与标签结果所表示的情况相同,预测判别结果与样本标签结果不一致是指判别结果所表示的情况与标签结果所表示的情况不同。
例如,第一数值为0,第二数值为1,在预测判别结果与样本标签结果一致的情况下,第二损失值等于0,在预测判别结果与样本标签结果不一致的情况下,第二损失值等于1。
需要说明的是,为了训练活体检测模型,计算机设备先获取训练样本集,该训练样本集包括多组样本手掌骨骼关节图像和对应的样本标签结果。基于训练样本集训练活体检测模型的过程包括多次迭代过程,在每次迭代过程中,基于至少一组样本手掌骨骼关节图像和对应的样本标签结果来进行训练,本申请实施例仅以一组第三样本手掌骨骼关节图像和对应的样本标签结果为例进行说明。
在训练活体检测模型的过程中,需要进行多次迭代。在一种可能实现方式中,响应于迭代轮次达到第一阈值,停止对该活体检测模型进行训练。
本申请实施例提供的方法,在训练活体检测模型的过程中,采用第三样本手掌骨骼关节图像和样本标签结果作为监督学习的训练样本,基于活体检测模型预测得到的预测判别结果和样本标签结果之间的差异,训练活体检测模型,使得活体检测模型学习到如何根据手掌骨骼关节图像中的特征分辨手掌骨骼关节图像是否为活体手掌骨骼关节图像,从而提高了活体检测模型的准确性。进而,后续在实际应用中使用训练完成的活体检测模型进行活体检测,提高了对手掌骨骼关节图像进行活体检测的便捷性和效率。
图9是本申请实施例提供的一种活体检测方法的架构图,如图9所示,本申请实施例提供的活体检测方法从整个架构的角度可以划分为三个阶段,分别为模型训练阶段、模型使用阶段和模型调优阶段。
在模型训练阶段中,包括超分辨模型的训练过程和活体检测模型的训练过程。超分辨率模型的训练过程是基于低分辨率的手掌骨骼关节图像和高分辨率的手掌骨骼关节图像的数据集实现的,在初始化超分辨模型的网络结构和网络参数后,利用数据集训练超分辨模型,使用反向传播算法和随机梯度下降法等方法,对超分辨模型的网络参数进行调整。活体检测模型的训练过程是基于手掌骨骼关节图像和对应的标签结果的数据集实现的,在初始化活体检测模型的网络结构和网络参数后,利用数据集训练活体检测模型,使用反向传播算法和随机梯度下降法等方法,对活体检测模型的网络参数进行调整。
在模型使用阶段中,用户在刷掌设备上进行刷掌,刷掌设备采集手掌骨骼关节图像,刷掌设备将采集到的手掌骨骼关节图像通过网络传输给后端的服务器,服务器中部署有训练后的超分辨率模型和活体检测模型。服务器将手掌骨骼关节图像输入超分辨率模型,超分辨率模型输出分辨率更高的手掌骨骼关节图像,然后将分辨率更高的手掌骨骼关节图像输入活体检测模型,活体检测模型输出判别结果。
在模型调优阶段中,如果发现活体检测模型输出的判别结果与手掌骨骼关节图像真实的标签结果不一致,也即是活体检测模型检测出错,则可以将检测出错的手掌骨骼关节图像和对应的标签结果组成新的数据集,使用该新的数据集继续对活体检测模型进行训练和调优,以提升活体检测模型的泛化能力和准确性。
图10是本申请实施例提供的一种活体检测装置的结构示意图。参见图10,该装置包括:
图像获取模块1001,用于获取第一手掌骨骼关节图像,第一手掌骨骼关节图像包括手掌骨骼和手掌骨骼之间的关节软组织;
超分辨率处理模块1002,用于对第一手掌骨骼关节图像进行超分辨率处理,得到第二手掌骨骼关节图像,第二手掌骨骼关节图像的分辨率大于第一手掌骨骼关节图像的分辨率;
活体检测模块1003,用于对第二手掌骨骼关节图像进行特征提取,得到手掌特征;
活体检测模块1003,还用于基于手掌特征进行判别,得到判别结果,判别结果用于表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像,活体手掌骨骼关节图像是指通过对真实手掌进行拍摄得到的手掌骨骼关节图像。
本申请实施例提供的活体检测装置,利用手掌骨骼关节图像中的手掌骨骼和关节软组织进行手掌的活体检测,由于真实手掌的手掌骨骼和关节软组织具有极高的复杂性,导致手掌骨骼和关节软组织的仿造难度较高,仿造得到的非活体手掌骨骼关节图像和真实的活体手掌骨骼关节图像之间的差别较大,因此利用手掌骨骼关节图像进行活体检测的准确性较高,并且考虑到手掌骨骼关节图像所包含的细节信息较多,还额外对手掌骨骼关节图像进行超分辨率处理,得到分辨率更高的手掌骨骼关节图像,利用分辨率更高的手掌骨骼关节图像进行活体检测,使得活体检测过程不会忽略掉细节信息,进一步提高了活体检测的准确性。
可选地,超分辨率模型包括第一特征提取网络、特征映射网络和图像重建网络;超分辨率处理模块1002,用于:
通过第一特征提取网络,对第一手掌骨骼关节图像进行特征提取,得到第一图像特征;
通过特征映射网络,对第一图像特征进行特征映射,得到第二图像特征,第二图像特征的维数大于第一图像特征的维数;
通过图像重建网络,基于第二图像特征进行图像重建,得到第二手掌骨骼关节图像。
可选地,参见图11,装置还包括第一训练模块1004,用于:
获取第一样本手掌骨骼关节图像和第二样本手掌骨骼关节图像,第一样本手掌骨骼关节图像的内容和第二样本手掌骨骼关节图像的内容相同,第二样本手掌骨骼关节图像的分辨率大于第一样本手掌骨骼关节图像的分辨率;
通过第一特征提取网络,对第一样本手掌骨骼关节图像进行特征提取,得到第一样本图像特征;
通过特征映射网络,对第一样本图像特征进行特征映射,得到第二样本图像特征,第二样本图像特征的维数大于第一样本图像特征的维数;
通过图像重建网络,基于第二样本图像特征进行图像重建,得到预测手掌骨骼关节图像;
基于预测手掌骨骼关节图像和第二样本手掌骨骼关节图像之间的差异,训练超分辨率模型。
可选地,第一训练模块1004,用于:
基于预测手掌骨骼关节图像和第二样本手掌骨骼关节图像之间的差值,确定第一损失值;
基于第一损失值,训练超分辨率模型,以使通过训练后的超分辨率模型得到的第一损失值减小。
可选地,活体检测模型包括第二特征提取网络和分类网络;
对第二手掌骨骼关节图像进行特征提取,得到手掌特征的步骤,通过第二特征提取网络执行;
基于手掌特征进行判别,得到判别结果的步骤,通过分类网络执行。
可选地,参见图11,装置还包括第二训练模块1005,用于:
获取第三样本手掌骨骼关节图像和样本标签结果,样本标签结果用于表示第三样本手掌骨骼关节图像是否为活体手掌骨骼关节图像的真实结果;
通过第二特征提取网络,对第三样本手掌骨骼关节图像进行特征提取,得到样本手掌特征;
通过分类网络,基于样本手掌特征进行判别,得到预测判别结果,预测判别结果用于表示第三样本手掌骨骼关节图像是否为活体手掌骨骼关节图像的预测结果;
基于预测判别结果和样本标签结果之间的差异,训练活体检测模型。
可选地,第二训练模块1005,用于:
获取原始手掌骨骼关节图像,原始手掌骨骼关节图像为未经超分辨率处理的图像;
将原始手掌骨骼关节图像确定为第三样本手掌骨骼关节图像;或者,对原始手掌骨骼关节图像进行超分辨率处理,得到第三样本手掌骨骼关节图像。
可选地,第二训练模块1005,用于:
在预测判别结果与样本标签结果一致的情况下,将第一数值确定为第二损失值,在预测判别结果与样本标签结果不一致的情况下,将第二数值确定为第二损失值,第二数值大于第一数值;
基于第二损失值,训练活体检测模型,以使通过训练后的活体检测模型得到的第二损失值减小。
可选地,参见图11,第一手掌骨骼关节图像为刷掌设备采集到的图像;装置还包括:
标签结果获取模块1006,用于获取第一手掌骨骼关节图像的标签结果,标签结果用于表示第一手掌骨骼关节图像是否为活体手掌骨骼关节图像的真实结果;
训练样本确定模块1007,用于在判别结果与标签结果不一致的情况下,将第一手掌骨骼关节图像和标签结果确定为训练样本,或者将第二手掌骨骼关节图像和标签结果确定为训练样本;
第二训练模块1005,用于基于训练样本,训练活体检测模型。
需要说明的是:上述实施例提供的活体检测装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的活体检测装置与活体检测方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行,以实现上述实施例的活体检测方法中所执行的操作。
可选地,该计算机设备提供为终端。图12示出了本申请一个示例性实施例提供的终端1200的结构示意图。终端1200包括有:处理器1201和存储器1202。
处理器1201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1201可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1201可以集成有GPU(Graphics Processing Unit,图像处理的交互器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1201还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1202中的非暂态的计算机可读存储介质用于存储至少一条计算机程序,该至少一条计算机程序用于被处理器1201所具有以实现本申请中方法实施例提供的活体检测方法。
在一些实施例中,终端1200还可选包括有:外围设备接口1203和至少一个外围设备。处理器1201、存储器1202和外围设备接口1203之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1203相连。可选地,外围设备包括:射频电路1204、显示屏1205、摄像头组件1206、音频电路1207和电源1208中的至少一种。
外围设备接口1203可被用于将I/O(Input /Output,输入/输出)相关的至少一个外围设备连接到处理器1201和存储器1202。在一些实施例中,处理器1201、存储器1202和外围设备接口1203被集成在同一芯片或电路板上;在一些其他实施例中,处理器1201、存储器1202和外围设备接口1203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1204用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1204包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1204可以通过至少一种无线通信协议来与其它设备进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1204还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1205用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1205是触摸显示屏时,显示屏1205还具有采集在显示屏1205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1201进行处理。此时,显示屏1205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1205可以为一个,设置在终端1200的前面板;在另一些实施例中,显示屏1205可以为至少两个,分别设置在终端1200的不同表面或呈折叠设计;在另一些实施例中,显示屏1205可以是柔性显示屏,设置在终端1200的弯曲表面上或折叠面上。甚至,显示屏1205还可以设置成非矩形的不规则图形,也即异形屏。显示屏1205可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-EmittingDiode,有机发光二极管)等材质制备。
摄像头组件1206用于采集图像或视频。可选地,摄像头组件1206包括前置摄像头和后置摄像头。前置摄像头设置在终端1200的前面板,后置摄像头设置在终端1200的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1206还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1201进行处理,或者输入至射频电路1204以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1200的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1201或射频电路1204的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1207还可以包括耳机插孔。
电源1208用于为终端1200中的各个组件进行供电。电源1208可以是交流电、直流电、一次性电池或可充电电池。当电源1208包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1200还包括有一个或多个传感器1209。该一个或多个传感器1209包括但不限于:加速度传感器1210、陀螺仪传感器1211、压力传感器1212、光学传感器1213以及接近传感器1214。
加速度传感器1210可以检测以终端1200建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1210可以用于检测重力加速度在三个坐标轴上的分量。处理器1201可以根据加速度传感器1210采集的重力加速度信号,控制显示屏1205以横向视图或纵向视图进行用户界面的显示。加速度传感器1210还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1211可以检测终端1200的机体方向及转动角度,陀螺仪传感器1211可以与加速度传感器1210协同采集用户对终端1200的3D动作。处理器1201根据陀螺仪传感器1211采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1212可以设置在终端1200的侧边框和/或显示屏1205的下层。当压力传感器1212设置在终端1200的侧边框时,可以检测用户对终端1200的握持信号,由处理器1201根据压力传感器1212采集的握持信号进行左右手识别或快捷操作。当压力传感器1212设置在显示屏1205的下层时,由处理器1201根据用户对显示屏1205的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器1213用于采集环境光强度。在一个实施例中,处理器1201可以根据光学传感器1213采集的环境光强度,控制显示屏1205的显示亮度。可选地,当环境光强度较高时,调高显示屏1205的显示亮度;当环境光强度较低时,调低显示屏1205的显示亮度。在另一个实施例中,处理器1201还可以根据光学传感器1213采集的环境光强度,动态调整摄像头组件1206的拍摄参数。
接近传感器1214,也称距离传感器,设置在终端1200的前面板。接近传感器1214用于采集用户与终端1200的正面之间的距离。在一个实施例中,当接近传感器1214检测到用户与终端1200的正面之间的距离逐渐变小时,由处理器1201控制显示屏1205从亮屏状态切换为息屏状态;当接近传感器1214检测到用户与终端1200的正面之间的距离逐渐变大时,由处理器1201控制显示屏1205从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图12中示出的结构并不构成对终端1200的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
可选地,该计算机设备提供为服务器。图13是本申请实施例提供的一种服务器的结构示意图,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central Processing Units,CPU)1301和一个或一个以上的存储器1302,其中,所述存储器1302中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器1301加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行,以实现上述实施例的活体检测方法所执行的操作。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序由处理器加载并执行,以实现如上述实施例的活体检测方法所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
- 活体身份认证方法、装置、计算机设备和可读存储介质
- 活体检测方法、装置和计算机可读存储介质
- 一种液位检测装置和包含其的设备以及液位检测方法、电子设备及计算机可读存储介质
- 一种检测方法、装置、计算机可读存储介质和计算机设备
- 设备的检测方法、装置、计算机设备和存储介质
- 活体检测方法及装置、计算机设备和计算机可读存储介质
- 活体检测方法、装置、计算机设备及存储介质