一种基于热成像的活体甄别方法、装置、设备及存储介质与流程

文档序号:22797407发布日期:2020-11-04 03:51阅读:206来源:国知局

本发明涉及图像识别技术领域,尤其涉及一种基于热成像的活体甄别方法、装置、设备及存储介质。



背景技术:

交通、安防、公共安全等领域对检测是否存在活体有广泛的应用需求。但是传统的活体识别都是建立在二维或三维视觉图像之上,对活体识别设备的运算性能要求高,导致设备成本高,而且二维或三维视觉图像存在泄露隐私的问题。



技术实现要素:

基于此,有必要针对上述问题,提出了一种基于热成像的活体甄别方法、装置、设备及存储介质。

第一方面,本发明提出了一种基于热成像的活体甄别方法,所述方法包括:

获取目标图像,所述目标图像的各个像素点的像素值为温度值;

根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;

将与所述目标图像对应的目标特征向量作为活体甄别模型的输入;

获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。

在一个实施例中,所述方法还包括:

获取多个图像特征向量样本,一个图像特征向量样本对应一个图像样本;

将所述多个图像特征向量样本输入前馈神经网络的输入层进行特征提取,得到与每个所述图像特征向量样本对应的第一特征向量;

将与每个所述图像特征向量样本对应的第一特征向量输入所述前馈神经网络的隐藏层进行特征提取,得到与每个所述图像特征向量样本对应的第二特征向量;

将与每个所述图像特征向量样本对应的第二特征向量输入所述前馈神经网络的输出层进行预测,得到与每个所述图像特征向量样本对应的第三特征向量,其中,所述第三特征向量用于指示所述图像特征向量样本对应的图像样本中存在活体和不存在活体的概率,所述第三特征向量的向量元素个数为2,并且所述第三特征向量的向量元素的值之和为1;

根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,所述图像特征向量样本对应的活体标定值用于指示所述图像特征向量样本对应的图像样本中的活体情况;

其中,所述前馈神经网络的隐藏层与输入层采用全连接,所述前馈神经网络的输出层与隐藏层采用全连接。

在一个实施例中,根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,包括:

根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值,计算所述前馈神经网络的损失;

根据所述损失更新所述前馈神经网络中的参数,所述前馈神经网络的参数包括所述输入层的参数、所述隐藏层的参数以及所述输出层的参数,更新后的所述输入层的参数被用于下一次计算与每个所述图像特征向量样本对应的第一特征向量,更新后的所述隐藏层的参数被用于下一次计算与每个所述图像特征向量样本对应的第二特征向量,更新后的所述输出层的参数被用于下一次计算与每个所述图像特征向量样本对应的第三特征向量;

重复执行上述方法步骤直至所述损失达到第一收敛条件或迭代次数达到第二收敛条件,将损失达到第一收敛条件或迭代次数达到第二收敛条件的前馈神经网络确定为所述活体甄别模型。

在一个实施例中,所述前馈神经网络的输入层的输出标记为y1,所述前馈神经网络的输入层的输出为所述第一特征向量,所述前馈神经网络的隐藏层的输出标记为y2,所述前馈神经网络的隐藏层的输出为所述第二特征向量,所述前馈神经网络的输出层标记的输出为y3,所述前馈神经网络的输出层的输出为所述第三特征向量;

y1=sigmoid(w1tx+b1)

y2=sigmoid(w2ty1+b2)

y3=sigmoid(w3ty2+b3)

其中,sigmoid()为激活函数,x为输入所述前馈神经网络的输入层的所述图像特征向量样本,w1是x每个维度的权重,w2是y1每个维度的权重,w3是y2每个维度的权重,t是矩阵转置计算,b1是偏置常量,b2是偏置常量,b3是偏置常量,w1、w2、w3都是矩阵,w1、b1是所述前馈神经网络的输入层的参数,w2、b2、是所述前馈神经网络的隐藏层的参数,w3、b3是所述前馈神经网络的输出层的参数。

在一个实施例中,所述获取目标图像,包括:

获取各采样周期对应的待清洗图像,一个采样周期对应的待清洗图像为在一个采样周期内采集到的热成像图像;

若目标采样周期对应的待清洗图像的数量小于预设图像阈值,或者,目标采样周期对应的待清洗图像中存在像素点数量少于预设像素点阈值的活体检测图像,则丢弃所述目标采样周期对应的待清洗图像,否则则将所述目标采样周期对应的待清洗图像作为备选图像,所述目标采样周期为任一采样周期;

根据目标时刻从所述备选图像中,确定所述目标图像。

在一个实施例中,所述根据所述目标图像,确定与所述目标图像对应的目标特征向量,包括:

根据所述目标图像,得到目标图像特征矩阵;

将所述目标图像特征矩阵进行一维向量转换,得到与所述目标图像对应的目标特征向量。

在一个实施例中,所述基于所述甄别结果确定所述目标图像中是否存在活体,包括:

所述甄别结果包括有活体甄别结果值和无活体甄别结果值,判断所述有活体甄别结果值与所述无活体甄别结果值的大小;

当所述有活体甄别结果值大于所述无活体甄别结果值时,确定所述目标图像中存在活体;

当所述有活体甄别结果值小于所述无活体甄别结果值时,确定所述目标图像中不存在活体。

第二方面,本发明还提出了一种基于热成像的活体甄别装置,所述装置包括:

图像获取模块,用于获取目标图像,所述目标图像的各个像素点的像素值为温度值;

向量提取模块,用于根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;

活体甄别模块,用于将与所述目标图像对应的目标特征向量作为活体甄别模型的输入,获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。

第三方面,本发明还提出了一种存储介质,存储有计算机指令程序,所述计算机指令程序被处理器执行时,使得所述处理器执行第一方面任一项所述方法的步骤。

第四方面,本发明还提出了一种计算机设备,包括至少一个存储器、至少一个处理器,所述存储器存储有计算机指令程序,所述计算机指令程序被所述处理器执行时,使得所述处理器执行第一方面任一项所述方法的步骤。

综上所述,本发明提出了一种基于热成像的活体甄别方法、装置、设备及存储介质,首先获取目标图像,所述目标图像的各个像素点的像素值为温度值;然后根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;最后将与所述目标图像对应的目标特征向量作为活体甄别模型的输入;获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。由于在无活体的时候,场景中的温度值相对较低,而在有活体的时候,场景中活体所在区域的温度值相对较高,因此,基于温度值形成的目标图像可以用于确定场景中是否存在活体。整个甄别过程是基于温度值形成的目标图像,相对传统的二维或三维视觉图像,避免了泄露隐私的问题。因此,本发明确定了目标图像中是否存在活体,避免了泄露隐私的问题。

附图说明

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

其中:

图1为一个实施例中基于热成像的活体甄别方法的流程图;

图2为图1的基于热成像的活体甄别方法的确定活体甄别模型的流程图;

图3为图2的基于热成像的活体甄别方法的确定活体甄别模型的流程图;

图4为图1的基于热成像的活体甄别方法的确定目标图像的流程图;

图5为一个实施例中基于热成像的活体甄别装置的结构框图;

图6为一个实施例中计算机设备的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在一个实施例中,提出了一种基于热成像的活体甄别方法,所述基于热成像的活体甄别方法的执行主体为能够实现基于热成像的活体甄别方法的设备,该设备与包括但不限于终端和服务器。其中,终端包括台式终端和移动终端,台式终端包括但不限于台式电脑、工控机、车载电脑,移动终端包括但不限于手机、平板电脑、笔记本电脑、智能手表和其他穿戴设备;服务器包括高性能计算机和高性能计算机集群。

如图1所示,所述基于热成像的活体甄别方法,具体包括:

s102、获取目标图像,所述目标图像的各个像素点的像素值为温度值;

其中,目标图像为需要甄别是否存在活体的图像。

具体而言,目标图像为反映场景中温度情况的图像,目标图像的各个像素点的像素值为温度值。当场景中不存在活体的时候,对应的目标图像的各个像素点的温度值较低,目标图像整体呈现为深色;当场景中存在活体的时候,活体所在区域对应的目标图像的图像区域的温度值较高,这些图像区域的颜色将偏向浅色,甚至是白色。目标图像中的每个像素点都有一个坐标位置,该坐标位置为像素点在目标图像中的位置,坐标位置可以表述为(x,y),其中,x表述横坐标点的值,y表述纵坐标的值,横坐标和纵坐标垂直设置。

目标图像可以根据热成像设备的拍摄结果确定。热成像设备可以将场景中的温度情况拍摄成热成像图像,根据热成像图像确定目标图像;热成像设备还可以将场景中的温度情况拍摄成热成像视频,将热成像视频中某一帧的图像作为目标图像。热成像设备包括但不限于被动红外设备pit(passiveinfraredthermal)。

s104、根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;

具体而言,根据目标图像的各个像素点的像素值构建目标特征向量,其中,目标特征向量的每个向量元素表述目标图像中的一个像素点,目标特征向量的向量元素的值表述的是像素点的像素值,也就是说,目标特征向量的向量元素的值表述的是温度值。

s106、将与所述目标图像对应的目标特征向量作为活体甄别模型的输入;

具体而言,将与所述目标图像对应的目标特征向量输入活体甄别模型进行活体甄别,活体甄别模型完成甄别将输出甄别结果,甄别结果用于确定目标图像中是否存在活体,其中,目标特征向量的表述方式是符合输入活体甄别模型要求的表述方式。

可选的,活体甄别模型是基于前馈神经网络训练得到的。其中,采用多个图像特征向量样本训练前馈神经网络;每个图像特征向量样本的生成规则与目标特征向量的生成规则是相同的,以使每个图像特征向量样本的向量元素的数量与目标特征向量的数量相同,使每个图像特征向量样本的向量元素的含义与目标特征向量的含义相同。可以理解的是,含义相同是指向量元素对应的场景相对位置相同,比如,图像特征向量样本的第一行第二列的向量元素与目标特征向量的第一行第二列的向量元素,都是场景相对位置(0.001cm,0.002cm)提取出的向量元素,在此举例不做具体限定。

s108、获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。

其中,获取将所述目标图像对应的目标特征向量输入活体甄别模型进行活体甄别得到的甄别结果。

可选的,甄别结果是两个数值,甄别结果的其中一个数值表述存在活体的概率,甄别结果的另一个数值表述不存在活体的概率,存在活体的概率和不存在活体的概率可以是一个0到1的概率值,存在活体的概率和不存在活体的概率的和为1,根据存在活体的概率和不存在活体的概率的大小可以对目标图像中是否存在活体进行甄别。

可选的,当进行持续甄别时,目标图像可以是热成像设备连续拍摄的热成像图像和/或热成像视频的连续多帧图像,目标图像还可以是热成像设备连续拍摄热成像图像中的部分热成像图像和/或热成像视频中的部分帧的图像。其中,热成像设备连续拍摄热成像图像中的部分热成像图像可以是热成像图像连续拍摄热成像图像,从连续拍摄热成像图像中按预设抽取规则抽取出的热成像图像;热成像视频中的部分帧的图像是从热成像视频中按预设抽取规则抽取的热成像图像。

所述预设抽取规则是指预先设置的抽取规则。抽取规则是指抽取热成像图像的抽取时间的确定规则,可以是等时间间隔,也可以是不等时间间隔,还可以是指定的时间点。等时间间隔是指相邻两个抽取时间之间的间隔时长相同。不等时间间隔是指相邻两个抽取时间之间的间隔时长部分不同。

本实施例首先获取目标图像,所述目标图像的各个像素点的像素值为温度值;然后根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;最后将与所述目标图像对应的目标特征向量作为活体甄别模型的输入;获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。由于在无活体的时候,场景中的温度值相对较低,而在有活体的时候,场景中活体所在区域的温度值相对较高,因此,基于温度值形成的目标图像可以用于确定场景中是否存在活体。整个甄别过程是基于温度值形成的目标图像,相对传统的二维或三维视觉图像,避免了泄露隐私的问题。

如图2所示,在一个实施例中,所述方法还包括:

s202、获取多个图像特征向量样本,一个图像特征向量样本对应一个图像样本;

所述多个图像特征向量样本用于训练前馈神经网络。所述多个图像特征向量样本中图像特征向量样本的数量可以是500个、1000个、2000个、3000个、5000个、6000个,在此举例不做具体限定。

图像样本的各个像素点的像素值为温度值。

每个图像特征向量样本携带一个活体标定值。活体标定值是包含2个向量元素的向量,活体标定值的其中一个向量元素表述存在活体的标定值,活体标定值的另一个数值表述不存在活体的标定值。比如,当存在活体时存在活体的标定值为1,不存在活体的标定值为0;当不存在活体时存在活体的标定值为0,不存在活体的标定值为1。

可选的,当图像样本存在有活体的图像区域时,有活体的图像区域是一个连续的区域,有活体的图像区域的像素点的像素值大于预设像素值,其中,有活体的图像区域在第一方向的像素点数量大于第一预设数量且在第二方向的像素点数量大于第二预设数量,或者,有活体的图像区域在第二方向的像素点数量大于第一预设数量且在第一方向的像素点数量大于第二预设数量,第一方向和第二方向以预设夹角相交。

可选的第一预设数量小于或等于第二预设数量。

第一预设数量、第二预设数量都是预先设置的像素点的数量,比如,第一预设数量为10个像素点,第二预设数量为12个像素点,在此举例不做具体限定。

预设像素值是指预先设置的像素值阈值。

预设夹角是预设设置的最小夹角,最小夹角是小于135°的夹角。可选的,预设夹角的数值从80°到100°,比如,预设夹角可以为80°、85°、90°、95°、100°,在此举例不做具体限定。

可以理解的是,活体标定值可以独立放在数据列表中且与图像特征向量样本分开存储,也可以由每个图像特征向量样本携带且与图像特征向量样本一起存储。

s204、将所述多个图像特征向量样本输入前馈神经网络的输入层进行特征提取,得到与每个所述图像特征向量样本对应的第一特征向量;

其中,将所述多个图像特征向量样本中的图像特征向量样本依次输入前馈神经网络的输入层进行特征提取,得到与每个所述图像特征向量样本对应的第一特征向量,也就是说,每个图像特征向量样本对应一个第一特征向量。

通过提取第一特征向量,同时实现特征提取和特征向量的降维。其中,降维,是减少了向量元素的数量。

可选的,前馈神经网络可以采用多层感知器。多层感知器具有较强的表征数据的能力,从而有利于提高基于多层感知器训练的活体甄别模型的准确性。

s206、将与每个所述图像特征向量样本对应的第一特征向量输入所述前馈神经网络的隐藏层进行特征提取,得到与每个所述图像特征向量样本对应的第二特征向量;

将所有与每个所述图像特征向量样本对应的第一特征向量依次输入所述前馈神经网络的隐藏层进行特征提取,得到与每个所述图像特征向量样本对应的第二特征向量,也就是说,每个图像特征向量样本对应一个第二特征向量。

通过提取第二特征向量,同时实现特征提取和特征向量的降维。

可选的,根据图像特征向量样本中向量元素的数量,确定前馈神经网络的隐藏层的神经元的数量。比如,图像特征向量样本中向量元素的数量采用768个,则前馈神经网络的隐藏层的神经元的数量采用64个,在此举例不做具体限定。

s208、将与每个所述图像特征向量样本对应的第二特征向量输入所述前馈神经网络的输出层进行预测,得到与每个所述图像特征向量样本对应的第三特征向量,其中,所述第三特征向量用于指示所述图像特征向量样本对应的图像样本中存在活体和不存在活体的概率,所述第三特征向量的向量元素个数为2,并且所述第三特征向量的向量元素的值之和为1;

将所有与每个所述图像特征向量样本对应的第二特征向量依次输入所述前馈神经网络的输出层进行特征提取,得到与每个所述图像特征向量样本对应的第三特征向量,也就是说,每个图像特征向量样本对应一个第三特征向量。

第三特征向量的其中一个向量元素表述存在活体的概率,并且第三特征向量的另一个向量元素表述不存在活体的概率。

s210、根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,所述图像特征向量样本对应的活体标定值用于指示所述图像特征向量样本对应的图像样本中的活体情况;

具体而言,根据所述与每个所述图像特征向量样本对应的第三特征向量和每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,训练结束时,得到活体甄别模型。

其中,所述前馈神经网络的隐藏层与输入层采用全连接,所述前馈神经网络的输出层与隐藏层采用全连接。

本实施例实现了基于前馈神经网络训练出活体甄别模型,由于前馈神经网络具有较强的分类能力,因此训练出的活体甄别模型准确的甄别出目标图像中是否存在活体;由于前馈神经网络具有可以精确实现任意有限训练样本集,因此采用少了图像特征向量样本即可训练出活体甄别模型,提高了训练效率。

如图3所示,在一个实施例中,所述根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,包括:

s302、根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值,计算所述前馈神经网络的损失;

具体而言,将与每个所述图像特征向量样本对应的第三特征向量和每个所述图像特征向量样本对应的活体标定值输入所述预设损失函数,计算所述前馈神经网络的损失。

s304、根据所述损失更新所述前馈神经网络中的参数,所述前馈神经网络的参数包括所述输入层的参数、所述隐藏层的参数以及所述输出层的参数,更新后的所述输入层的参数被用于下一次计算与每个所述图像特征向量样本对应的第一特征向量,更新后的所述隐藏层的参数被用于下一次计算与每个所述图像特征向量样本对应的第二特征向量,更新后的所述输出层的参数被用于下一次计算与每个所述图像特征向量样本对应的第三特征向量;

将所述前馈神经网络的损失输入所述预设参数更新函数,计算得到前馈神经网络的参数的待更新值,用待更新值更新所述输入层的参数、所述隐藏层的参数以及所述输出层的参数。

s306、重复执行上述方法步骤直至所述损失达到第一收敛条件或迭代次数达到第二收敛条件,将损失达到第一收敛条件或迭代次数达到第二收敛条件的前馈神经网络确定为所述活体甄别模型。

具体而言,重复执行迭代计算,直至,当所述前馈神经网络的损失达到第一收敛条件或者计算与每个所述图像特征向量样本对应的第三特征向量的迭代次数达到第二收敛条件时训练结束,将训练结束后的前馈神经网络作为活体甄别模型。

所述第一收敛条件包括:连续两次计算出的所述前馈神经网络的损失的大小满足lipschitz条件(利普希茨连续条件)。

第二收敛条件,是一个预设的自然数。

预设损失函数j(θ)为:

其中,m为所述多个图像特征向量样本中所述图像特征向量样本的个数,y是与第i个所述图像特征向量样本对应的第三特征向量,y(i)是所述多个图像特征向量样本中的第i个所述图像特征向量样本对应的活体标定值,预设损失函数j(θ)输出值为所述前馈神经网络的损失。

预设更新函数zj为:

其中,预设更新函数zj的输出值为前馈神经网络的参数的待更值,θj为前馈神经网络的第j个参数,是指计算前馈神经网络的预设损失函数j(θ)的偏导数,是指计算前馈神经网络的第j个参数的偏导数;α是指机器学习的学习率。

本实施例训练时更新所述前馈神经网络的参数,从而每一次迭代计算使与每个图像特征向量样本对应的第三特征向量更接近与每个图像特征向量样本对应的活体标定值;通过设定第一收敛条件、第二收敛条件其中任一个作为训练结束条件,提高了训练效率。

在一个实施例中,所述前馈神经网络的输入层的输出标记为y1,所述前馈神经网络的输入层的输出为所述第一特征向量,所述前馈神经网络的隐藏层的输出标记为y2,所述前馈神经网络的隐藏层的输出为所述第二特征向量,所述前馈神经网络的输出层标记的输出为y3,所述前馈神经网络的输出层的输出为所述第三特征向量;

y1=sigmoid(w1tx+b1)

y2=sigmoid(w2ty1+b2)

y3=sigmoid(w3ty2+b3)

其中,sigmoid()为激活函数,x为输入所述前馈神经网络的输入层的所述图像特征向量样本,w1是x每个维度的权重,w2是y1每个维度的权重,w3是y2每个维度的权重,b1是偏置常量,b2是偏置常量,b3是偏置常量,w1、w2、w3都是矩阵,t是矩阵转置计算,w1、b1是所述前馈神经网络的输入层的参数,w2、b2是所述前馈神经网络的隐藏层的参数,w3、b3是所述前馈神经网络的输出层的参数。

其中,w1的第一维度的维度数与y1的第一维度的维度数相同,w1的第二维度的维度数与x的第一维度的维度数相同;w2的第一维度的维度数与y2的第一维度的维度数相同,w2的第二维度的维度数与y1的第一维度的维度数相同;w1的第一维度的维度数与y3的第一维度的维度数相同,w1的第二维度的维度数与y2的第一维度的维度数相同。其中,第一维度为高度,第二维度为宽度,比如,w1是尺寸为64×768的矩阵,则w1的第一维度的维度数是64,w1的第二维度的维度数是768。

也就是说,更新所述前馈神经网络中的参数是指更新w1、b1、w2、b2、w3、b3。

可选的,sigmoid采用logistic函数。比如:

可选的,图像特征向量样本中向量元素的数量是前馈神经网络的隐藏层的神经元数量的10至14倍,比如,图像特征向量样本中向量元素的数量采用768个,则前馈神经网络的隐藏层的神经元的数量采用64个,则x为768维的特征向量(维数与图像特征向量样本中向量元素的数量相同),w1是64×768的矩阵,在此举例不做具体限定。

本实施例提出了前馈神经网络的输入层、隐藏层、输出层的计算公式,通过采用激活函数sigmoid,提高了计算效率。

如图4所示,在一个实施例中,所述获取目标图像,包括:

s402、获取各采样周期对应的待清洗图像,一个采样周期对应的待清洗图像为在一个采样周期内采集到的热成像图像;

具体而言,热成像设备根据采样周期进行检测,得到各采样周期对应的待清洗图像。

所述采样周期是一个数值,比如,1秒、2秒、3秒、10秒、20秒,在此举例不做具体限定。

比如,当采样周期为1秒时,所述热成像设备按采集时间0秒(0秒是开始采集的时间)至采集时间1秒(第一个采样周期)、采集时间1秒至采集时间2秒(第二个采样周期)、采集时间2秒至采集时间3秒(第三个采样周期)对所述目标位置进行检测,其中,采集时间0秒至采集时间1秒不包括0秒且包括1秒、采集时间1秒至采集时间2秒不包括1秒且包括2秒、采集时间2秒至采集时间3秒不包括2秒且包括3秒,在此举例不做具体限定。

可选的,当所述热成像设备得到的是热成像视频时,采样周期为1秒,每秒采集32张(视频的帧率为32帧)活体检测图像,在此举例不做具体限定。

s404、若目标采样周期对应的待清洗图像的数量小于预设图像阈值,或者,目标采样周期对应的待清洗图像中存在像素点数量少于预设像素点阈值的活体检测图像,则丢弃所述目标采样周期对应的待清洗图像,否则则将所述目标采样周期对应的待清洗图像作为备选图像,所述目标采样周期为任一采样周期;

其中,若目标采样周期对应的待清洗图像的数量小于预设图像阈值,或者,目标采样周期对应的任一待清洗图像存在像素点数量少于预设像素点阈值时,则将所述目标采样周期对应的所有待清洗图像丢弃。

s406、根据目标时刻从所述备选图像中,确定所述目标图像。

所述目标时刻是指待甄别活体的时刻。

将所有所述备选图像中检测时间与目标时刻相同的备选图像作为目标图像。

本实施例实现了丢弃不符合条件的目标采样周期对应的所有待清洗图像,有利于提高备选图像的质量,从而提高目标图像的质量,进一步提高了活体甄别模型输出甄别结果的准确性。

在一个实施例中,所述根据所述目标图像,确定与所述目标图像对应的目标特征向量,包括:根据所述目标图像,得到目标图像特征矩阵;将所述目标图像特征矩阵进行一维向量转换,得到与所述目标图像对应的目标特征向量。

其中,目标图像特征矩阵是二维矩阵,目标图像特征矩阵的向量元素的值表述目标图像的像素点的像素值。比如,目标图像特征矩阵第3行第5列的向量元素表述的是目标图像的第3行第5列的像素点的像素值。

其中,与所述目标图像对应的目标特征向量是一维向量。比如,目标图像特征矩阵是24×32的二维矩阵,经过一维向量转换,得到768×1的一维向量,在此举例不做具体限定。

本实施例通过将二维矩阵转换为一维向量,得到与所述目标图像对应的目标特征向量,从而有利于将与所述目标图像对应的目标特征向量输入活体甄别模型进行是否存在活体甄别。

在一个实施例中,所述活体甄别模型接收与所述目标图像对应的目标特征向量;然后,所述活体甄别模型的输入层对与所述目标图像对应的目标特征向量进行特征提取,得到与所述目标图像对应的第一特征向量,并且将与所述目标图像对应的第一特征向量输入所述活体甄别模型的隐藏层;所述活体甄别模型的隐藏层对与所述目标图像对应的第一特征向量进行特征提取,得到与所述目标图像对应的第二特征向量,将与所述目标图像对应的第二特征向量发送给所述活体甄别模型的输出层;最后,所述活体甄别模型的输出层对与所述目标图像对应的第二特征向量进行预测,得到与所述目标图像对应的第三特征向量,将与所述目标图像对应的第三特征向量作为所述甄别结果。

在一个实施例中,所述基于所述甄别结果确定所述目标图像中是否存在活体,包括:所述甄别结果包括有活体甄别结果值和无活体甄别结果值,判断所述有活体甄别结果值与所述无活体甄别结果值的大小;当所述有活体甄别结果值大于所述无活体甄别结果值时,确定所述目标图像中存在活体;当所述有活体甄别结果值小于所述无活体甄别结果值时,确定所述目标图像中不存在活体。

有活体甄别结果值表述的是存在活体的概率,无活体甄别结果值表述的是不存在活体的概率,有活体甄别结果值和无活体甄别结果值的和为1。

所述有活体甄别结果值大于所述无活体甄别结果值时,说明此时有活体的概率更大,则可以确定所述目标图像中存在活体;当所述有活体甄别结果值小于所述无活体甄别结果值时,说明此时不存在活体的概率更大,则可以确定所述目标图像中不存在活体。

可选的,当所述有活体甄别结果值等于所述无活体甄别结果值时,则生成甄别异常提醒信号,所述甄别异常提醒信号用于提醒用户甄别异常,方便用户及时分析问题,提高了对目标图像进行活体甄别的效率。

本实施例实现了根据所述甄别结果确定所述目标图像中是否存在活体,可以根据目标图像中是否存在活体控制物联网设备进行工作,也可以根据目标图像中是否存在活体进行商业营销。

物联网设备是通过物联网控制系统控制的设备,包括包括空调、灯、加暖器、空气净化器、消毒器,在此举例不做具体限定。

在一个实施例中,当所述有活体甄别结果值同时大于所述无活体甄别结果值及概率阈值时,确定所述目标图像中存在活体;当所述无活体甄别结果值同时大于所述有活体甄别结果值及概率阈值时,确定所述目标图像中不存在活体。概率阈值是个0到1的具体数值,通过设置概率阈值避免误判,从而提高了活体甄别的准确性。

可选的,所述概率阈值大于0.5,比如,所述概率阈值可以是0.55、0.6、0.65、0.7、0.75,在此举例不做具体限定。

如图5所示,提出了一种基于热成像的活体甄别装置,所述装置包括:

图像获取模块502,用于获取目标图像,所述目标图像的各个像素点的像素值为温度值;

向量提取模块504,用于根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;

活体甄别模块506,用于将与所述目标图像对应的目标特征向量作为活体甄别模型的输入,获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。

本实施例首先通过图像获取模块502获取目标图像,所述目标图像的各个像素点的像素值为温度值;然后通过向量提取模块504根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;最后通过活体甄别模块506将与所述目标图像对应的目标特征向量作为活体甄别模型的输入;获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。由于在无活体的时候,场景中的温度值相对较低,而在有活体的时候,场景中活体所在区域的温度值相对较高,因此,基于温度值形成的目标图像可以用于确定场景中是否存在活体。整个甄别过程是基于温度值形成的目标图像,相对传统的二维或三维视觉图像,避免了泄露隐私的问题。

图6示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图6所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现基于热成像的活体甄别方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行基于热成像的活体甄别方法。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的一种基于热成像的活体甄别方法可以实现为一种计算机程序的形式,计算机程序可在如图6所示的计算机设备上运行。计算机设备的存储器中可存储组成的一种基于热成像的活体甄别装置的各个程序模板。比如,图像获取模块502、向量提取模块504、活体甄别模块506。

在一个实施例中,提出了一种存储介质,存储有计算机指令程序,所述计算机指令程序被处理器执行时,使得所述处理器执行时实现如下方法步骤:获取目标图像,所述目标图像的各个像素点的像素值为温度值;根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;将与所述目标图像对应的目标特征向量作为活体甄别模型的输入;获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:获取多个图像特征向量样本,一个图像特征向量样本对应一个图像样本;将所述多个图像特征向量样本输入前馈神经网络的输入层进行特征提取,得到与每个所述图像特征向量样本对应的第一特征向量;将与每个所述图像特征向量样本对应的第一特征向量输入所述前馈神经网络的隐藏层进行特征提取,得到与每个所述图像特征向量样本对应的第二特征向量;将与每个所述图像特征向量样本对应的第二特征向量输入所述前馈神经网络的输出层进行预测,得到与每个所述图像特征向量样本对应的第三特征向量,其中,所述第三特征向量用于指示所述图像特征向量样本对应的图像样本中存在活体和不存在活体的概率,所述第三特征向量的向量元素个数为2,并且所述第三特征向量的向量元素的值之和为1;根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,所述图像特征向量样本对应的活体标定值用于指示所述图像特征向量样本对应的图像样本中的活体情况;其中,所述前馈神经网络的隐藏层与输入层采用全连接,所述前馈神经网络的输出层与隐藏层采用全连接。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,包括:根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值,计算所述前馈神经网络的损失;根据所述损失更新所述前馈神经网络中的参数,所述前馈神经网络的参数包括所述输入层的参数、所述隐藏层的参数以及所述输出层的参数,更新后的所述输入层的参数被用于下一次计算与每个所述图像特征向量样本对应的第一特征向量,更新后的所述隐藏层的参数被用于下一次计算与每个所述图像特征向量样本对应的第二特征向量,更新后的所述输出层的参数被用于下一次计算与每个所述图像特征向量样本对应的第三特征向量;重复执行上述方法步骤直至所述损失达到第一收敛条件或迭代次数达到第二收敛条件,将损失达到第一收敛条件或迭代次数达到第二收敛条件的前馈神经网络确定为所述活体甄别模型。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述前馈神经网络的输入层标记为y1,所述前馈神经网络的隐藏层标记为y2,所述前馈神经网络的输出层标记为y3;

y1=sigmoid(w1tx+b1)

y2=sigmoid(w2ty1+b2)

y3=sigmoid(w3ty2+b3)

其中,sigmoid()为激活函数,x为输入所述前馈神经网络的输入层的所述图像特征向量样本,w1是x每个维度的权重,w2是y1每个维度的权重,w3是y2每个维度的权重,t是矩阵转置计算,b1是偏置常量,b2是偏置常量,b3是偏置常量,w1、w2、w3都是矩阵,w1、b1是所述前馈神经网络的输入层的参数,w2、b2、是所述前馈神经网络的隐藏层的参数,w3、b3是所述前馈神经网络的输出层的参数。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述获取目标图像,包括:获取各采样周期对应的待清洗图像,一个采样周期对应的待清洗图像为在一个采样周期内采集到的热成像图像;若目标采样周期对应的待清洗图像的数量小于预设图像阈值,或者,目标采样周期对应的待清洗图像中存在像素点数量少于预设像素点阈值的活体检测图像,则丢弃所述目标采样周期对应的待清洗图像,否则则将所述目标采样周期对应的待清洗图像作为备选图像,所述目标采样周期为任一采样周期;根据目标时刻从所述备选图像中,确定所述目标图像。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述根据所述目标图像,确定与所述目标图像对应的目标特征向量,包括:根据所述目标图像,得到目标图像特征矩阵;将所述目标图像特征矩阵进行一维向量转换,得到与所述目标图像对应的目标特征向量。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述基于所述甄别结果确定所述目标图像中是否存在活体,包括:所述甄别结果包括有活体甄别结果值和无活体甄别结果值,判断所述有活体甄别结果值与所述无活体甄别结果值的大小;当所述有活体甄别结果值大于所述无活体甄别结果值时,确定所述目标图像中存在活体;当所述有活体甄别结果值小于所述无活体甄别结果值时,确定所述目标图像中不存在活体。

在一个实施例中,提出了一种计算机设备,包括至少一个存储器、至少一个处理器,所述存储器存储有计算机指令程序,所述计算机指令程序被所述处理器执行时,使得所述处理器执行时实现如下方法步骤:获取目标图像,所述目标图像的各个像素点的像素值为温度值;根据所述目标图像,确定与所述目标图像对应的目标特征向量,所述目标特征向量用于指示所述各个像素点的像素值;将与所述目标图像对应的目标特征向量作为活体甄别模型的输入;获取所述活体甄别模型输出的甄别结果,并基于所述甄别结果确定所述目标图像中是否存在活体。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:获取多个图像特征向量样本,一个图像特征向量样本对应一个图像样本;将所述多个图像特征向量样本输入前馈神经网络的输入层进行特征提取,得到与每个所述图像特征向量样本对应的第一特征向量;将与每个所述图像特征向量样本对应的第一特征向量输入所述前馈神经网络的隐藏层进行特征提取,得到与每个所述图像特征向量样本对应的第二特征向量;将与每个所述图像特征向量样本对应的第二特征向量输入所述前馈神经网络的输出层进行预测,得到与每个所述图像特征向量样本对应的第三特征向量,其中,所述第三特征向量用于指示所述图像特征向量样本对应的图像样本中存在活体和不存在活体的概率,所述第三特征向量的向量元素个数为2,并且所述第三特征向量的向量元素的值之和为1;根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,所述图像特征向量样本对应的活体标定值用于指示所述图像特征向量样本对应的图像样本中的活体情况;其中,所述前馈神经网络的隐藏层与输入层采用全连接,所述前馈神经网络的输出层与隐藏层采用全连接。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值对所述前馈神经网络进行训练,得到所述活体甄别模型,包括:根据所述与每个所述图像特征向量样本对应的第三特征向量、每个所述图像特征向量样本对应的活体标定值,计算所述前馈神经网络的损失;根据所述损失更新所述前馈神经网络中的参数,所述前馈神经网络的参数包括所述输入层的参数、所述隐藏层的参数以及所述输出层的参数,更新后的所述输入层的参数被用于下一次计算与每个所述图像特征向量样本对应的第一特征向量,更新后的所述隐藏层的参数被用于下一次计算与每个所述图像特征向量样本对应的第二特征向量,更新后的所述输出层的参数被用于下一次计算与每个所述图像特征向量样本对应的第三特征向量;重复执行上述方法步骤直至所述损失达到第一收敛条件或迭代次数达到第二收敛条件,将损失达到第一收敛条件或迭代次数达到第二收敛条件的前馈神经网络确定为所述活体甄别模型。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述前馈神经网络的输入层标记为y1,所述前馈神经网络的隐藏层标记为y2,所述前馈神经网络的输出层标记为y3;

y1=sigmoid(w1tx+b1)

y2=sigmoid(w2ty1+b2)

y3=sigmoid(w3ty2+b3)

其中,sigmoid()为激活函数,x为输入所述前馈神经网络的输入层的所述图像特征向量样本,w1是x每个维度的权重,w2是y1每个维度的权重,w3是y2每个维度的权重,t是矩阵转置计算,b1是偏置常量,b2是偏置常量,b3是偏置常量,w1、w2、w3都是矩阵,w1、b1是所述前馈神经网络的输入层的参数,w2、b2、是所述前馈神经网络的隐藏层的参数,w3、b3是所述前馈神经网络的输出层的参数。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述获取目标图像,包括:获取各采样周期对应的待清洗图像,一个采样周期对应的待清洗图像为在一个采样周期内采集到的热成像图像;若目标采样周期对应的待清洗图像的数量小于预设图像阈值,或者,目标采样周期对应的待清洗图像中存在像素点数量少于预设像素点阈值的活体检测图像,则丢弃所述目标采样周期对应的待清洗图像,否则则将所述目标采样周期对应的待清洗图像作为备选图像,所述目标采样周期为任一采样周期;根据目标时刻从所述备选图像中,确定所述目标图像。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述根据所述目标图像,确定与所述目标图像对应的目标特征向量,包括:根据所述目标图像,得到目标图像特征矩阵;将所述目标图像特征矩阵进行一维向量转换,得到与所述目标图像对应的目标特征向量。

在一个实施例中,所述计算机程序被所述处理器执行时,还用于:所述基于所述甄别结果确定所述目标图像中是否存在活体,包括:所述甄别结果包括有活体甄别结果值和无活体甄别结果值,判断所述有活体甄别结果值与所述无活体甄别结果值的大小;当所述有活体甄别结果值大于所述无活体甄别结果值时,确定所述目标图像中存在活体;当所述有活体甄别结果值小于所述无活体甄别结果值时,确定所述目标图像中不存在活体。

需要说明的是,上述一种基于热成像的活体甄别方法、一种基于热成像的活体甄别装置、存储介质及计算机设备属于一个总的发明构思,一种基于热成像的活体甄别方法、一种基于热成像的活体甄别装置、存储介质及计算机设备实施例中的内容可相互适用。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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