本发明涉及区块链技术领域,尤其涉及一种基于区块链的身份识别方法、信息保存方法及相关装置。
背景技术:
随着各公司的不断发展,各公司开始在全国各地,甚至在全球各大城市中建立了子公司。由于同一母公司旗下的各子公司有各自的身份识别系统,各子公司的身份识别系统互不相通。因此,同一母公司旗下的不同子公司的员工在互相的走访中,难以对该员工进行身份识别。例如,子公司a的员工b需要到子公司c出差,由于子公司c的身份识别系统没有员工b的身份信息。因此,子公司c只能依靠人工比对员工b本人与员工b的工作证上的信息进行身份识别,识别效率低。
技术实现要素:
鉴于上述问题,本发明提供一种克服上述问题或者至少部分地解决上述问题的一种基于区块链的身份识别方法、信息保存方法及相关装置,技术方案如下:
一种基于区块链的身份识别方法,应用于区块链网络,所述方法包括:
对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;
对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;
将所述五官特征点的二维坐标与所述五官特征点的二维坐标在所述深度信息中对应的深度参数结合,确定所述五官特征点的三维坐标,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;
将所述人脸正面图像进行卷积处理,获得多个不同尺度的人脸特征图像;
根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;
从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;
对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中所述五官特征点的灰度值的差值;
按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;
对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;
在所述区块链网络中查找所述哈希序列值,根据查找结果确定所述人脸正面图像对应的用户的身份信息。
可选的,所述预设的排列顺序包括:各图像组的排列顺序和/或每个图像组内所述五官特征点的排列顺序,其中,不同的图像组内所述五官特征点的排列顺序相同或不同。
可选的,任一图像组中的两个人脸特征图像的尺度相邻。
可选的,所述根据查找结果确定所述人脸正面图像对应的用户的身份信息,包括:
当所述查找结果为所述区块链网络中存在所述哈希序列值时,获得所述区块链网络中保存的、与所述哈希序列值对应的用户身份信息。
可选的,所述对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息,包括:
将所述人脸正面图像输入至预设的三维人脸模型进行深度检测,获得所述人脸正面图像的深度信息。
可选的,所述将所述人脸正面图像进行卷积处理,获得多个不同尺度的人脸特征图像,包括:
通过gabor滤波器对所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像。
可选的,所述预设的卷积参数为滤波波长尺度间隔为3,滤波方向间隔为π/8,调谐函数的相位偏移为0,带宽为2π和空间系数为0.5。
一种基于区块链的信息保存方法,应用于区块链网络,所述方法包括:
对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;
对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;
根据所述人脸正面图像中五官特征点的二维坐标与所述人脸正面图像的深度信息,确定所述五官特征点的三维坐标信息,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;
将所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像,其中,所述人脸特征图像的数量与所述预设的卷积参数有关;
根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;
从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;
对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中五官特征点的灰度值的差值;
按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;
对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;
将所述哈希序列值保存到所述区块链网络中。
一种基于区块链的身份识别装置,应用于区块链网络,所述装置包括:特征点二维坐标确定单元、深度信息获得单元、纵向信息确定单元、人脸特征图像获得单元、灰度值确定单元、图像组获得单元、灰度差值获得单元、横向信息确定单元、哈希序列值获得单元和身份信息确定单元,
所述特征点二维坐标确定单元,用于对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;
所述深度信息获得单元,用于对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;
所述纵向信息确定单元,用于将所述五官特征点的二维坐标与所述五官特征点的二维坐标在所述深度信息中对应的深度参数结合,确定所述五官特征点的三维坐标,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;
所述人脸特征图像获得单元,用于将所述人脸正面图像进行卷积处理,获得多个不同尺度的人脸特征图像;
所述灰度值确定单元,用于根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;
所述图像组获得单元,用于从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;
所述灰度差值获得单元,用于对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中所述五官特征点的灰度值的差值;
所述横向信息确定单元,用于按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;
所述哈希序列值获得单元,用于对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;
所述身份信息确定单元,用于在所述区块链网络中查找所述哈希序列值,根据查找结果确定所述人脸正面图像对应的用户的身份信息。
一种基于区块链的信息保存装置,包括:特征点二维坐标确定单元、深度信息获得单元、纵向信息确定单元、人脸特征图像获得单元、灰度值确定单元、图像组获得单元、灰度差值获得单元、横向信息确定单元、哈希序列值获得单元和保存单元,
所述特征点二维坐标确定单元,用于对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;
所述深度信息获得单元,用于对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;
所述纵向信息确定单元,用于根据所述人脸正面图像中五官特征点的二维坐标与所述人脸正面图像的深度信息,确定所述五官特征点的三维坐标信息,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;
所述人脸特征图像获得单元,用于将所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像,其中,所述人脸特征图像的数量与所述预设的卷积参数有关;
所述灰度值确定单元,用于根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;
所述图像组获得单元,用于从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;
所述灰度差值获得单元,用于对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中五官特征点的灰度值的差值;
所述横向信息确定单元,用于按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;
所述哈希序列值获得单元,用于对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;
所述保存单元,用于将所述哈希序列值保存到所述区块链网络中。
借由上述技术方案,本发明提供的一种基于区块链的身份识别方法、信息保存方法及相关装置,应用于区块链网络,本发明通过将人脸正面图像生成哈希序列值,并将该哈希序列值保存至区块链网络中,以使后续用户对人员的身份识别中,将获得的该人员的人脸正面图像对应的哈希序列值与区块链网络中保存的哈希序列值进行对比,从而对该人员进行身份识别,提升身份识别的效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种基于区块链的身份识别方法的流程示意图;
图2示出了本发明实施例提供的另一种基于区块链的身份识别方法的流程示意图;
图3示出了本发明实施例提供的另一种基于区块链的身份识别方法的流程示意图;
图4示出了本发明实施例提供的一种基于区块链的信息保存方法的流程示意图;
图5示出了本发明实施例提供的另一种基于区块链的信息保存方法的流程示意图;
图6示出了本发明实施例提供的一种基于区块链的身份识别装置的结构示意图;
图7示出了本发明实施例提供的一种基于区块链的信息保存装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,本发明实施例提供的一种基于区块链的身份识别方法,应用于区块链网络,所述方法包括:
s100、对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标。
其中,人脸正面图像为可以显示人脸五官的平面图像。五官特征点包括左眉特征点、右眉特征点、左眼特征点、右眼特征点、左耳特征点、右眼特征点、鼻子特征点和口部特征点。
具体的,本发明实施例可以通过人脸正面图像中人脸的肤色以及人脸正面图像的哈尔特征(haar-likefeatures)确定人脸正面图像中人脸的区域位置。通过现有的人脸五官识别方法确定人脸正面图像中的五官特征点的位置。人脸五官识别方法可以包括:基于灰度值变化信息法、基于主动轮廓模型法(activecontourmodel,acm)以及主动形状模型法(activeshapemodel,asm)等。本发明在此不作进一步的限定。需要注意的是,根据选择人脸五官识别方法的不同,本发明实施例确定的五官特征点的数量也不同。例如,百度大脑人脸五官识别法可以确定72个五官特征点。腾讯ai人脸五官识别法可以确定88个五官特征点。
本发明实施例可以通过预先训练好的人脸五官识别模型对人脸正面图像进行人脸五官识别。具体的,该人脸五官识别模型可以是卷积神经网络模型。本发明实施例对该人脸五官识别模型的训练过程包括:获得至少一个人脸正面训练图像,其中,人脸正面训练图像中标注有人脸五官特征点。对该人脸正面训练图像中的人脸五官特征点进行机器学习,获得人脸五官识别模型,其中,该人脸五官识别模型的输入为:人脸正面图像,该人脸五官识别模型的输出为:五官特征点。
具体的,本发明实施例可以先将该至少一个人脸正面训练图像中的全部图像进行尺度变换至预设的人脸标准大小,接着对该至少一个人脸正面训练图像进行降维处理,再对尺度相同的该至少一个人脸正面训练图像中的五官特征点进行机器学习。其中,尺度变换可以包括:平移、缩放和旋转中的至少一个。预设的人脸标准大小可以为技术人员实际确定的人脸形状大小。
本发明实施例在将人脸正面图像输入至训练好的人脸五官识别模型中进行五官特征点识别时,可以先将人脸正面图像进行尺度变换至预设的人脸标准大小后,再识别该人脸正面图像上的五官特征点。本发明实施例避免了人脸正面图像的尺度与人脸五官识别模型训练所用的人脸正面训练图像的尺度不一致,导致人脸五官识别模型对人脸正面图像的五官特征点识别不准确的问题。
本发明实施例可以人脸正面图像上识别到的鼻子特征点作为坐标原点建立坐标轴。具体的,本发明实施例可以在尺度为预设的人脸标准大小的人脸正面图像上的鼻子特征点作为坐标原点,建立水平和垂直两条坐标轴从而确定人脸正面图像中五官特征点的二维坐标。
s110、对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息。
具体的,本发明实施例可以使用单目深度估计方法或双目深度估计方法对人脸正面图像进行深度检测,以获得该人脸正面图像的深度信息。
可选的,如图2所示,本发明实施例提供的另一种基于区块链的身份识别方法,步骤s110可以包括:
s111、将所述人脸正面图像输入至预设的三维人脸模型进行深度检测,获得所述人脸正面图像的深度信息。
具体的,本发明实施例可以通过深度摄像机采集的至少一个人脸深度图像进行机器学习,获得预设的三维人脸模型。
s120、将所述五官特征点的二维坐标与所述五官特征点的二维坐标在所述深度信息中对应的深度参数结合,确定所述五官特征点的三维坐标,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息。
具体的,在获得人脸正面图像的深度信息后,本发明实施例根据五官特征点的二维坐标,可以在该深度信息中确定与五官特征点的二维坐标对应的深度参数,该深度参数即为该五官特征点的除该二维坐标以外的第三维坐标。例如,人脸正面图像的二维坐标为分别为x和y,与x和y对应的深度参数为z,则该人脸正面图像的三维坐标为x、y和z。
s130、将所述人脸正面图像进行卷积处理,获得多个不同尺度的人脸特征图像。
具体的,本发明实施例可以通过特征提取网络,获得多个不同尺度的人脸特征图像。特征提取网络可以包括resnext-50、resnext-101、resnext-152和densenet在内的卷积神经网络。
可选的,如图3所示,本发明实施例提供的另一种基于区块链的身份识别方法,步骤s130可以包括:
s131、通过gabor滤波器对所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像。
其中,所述预设的卷积参数为滤波波长尺度间隔为3,滤波方向间隔为π/8,调谐函数的相位偏移为0,带宽为2π和空间系数为0.5。
s140、根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值。
为了便于理解,此处通过举例进行说明:假设本发明实施例获得尺度分别为1/32、1/16、1/8和1/4的人脸特征图像,则本发明实施例可以根据五官特征点的二维坐标,分别在尺度为1/32、1/16、1/8和1/4的人脸特征图像中确定五官特征点的灰度值。
s150、从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同。
为了便于理解,此处通过举例进行说明:假设本发明实施例获得尺度分别为1/32、1/16、1/8和1/4的人脸特征图像,则某一图像组中可以包括尺度为1/8和1/4的人脸特征图像,另一图像组可以包括尺度为1/16和1/4的人脸特征图像。
本发明提供的一优选的实施例:任一图像组中的两个人脸特征图像的尺度相邻。例如:本发明实施例获得尺度分别为1/32、1/16、1/8和1/4的人脸特征图像,则第一个图像组中包括尺度为1/32和1/16的人脸特征图像,第二个图像组中包括尺度为1/16和1/8的人脸特征图像,第三个图像组中包括尺度为1/8和1/4的人脸特征图像。
s160、对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中所述五官特征点的灰度值的差值。
s170、按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息。
可以理解的是,由于五官特征点可以有很多个,为了使本发明实施例获得的横向信息具有唯一性,本发明实施例需要按照预设的排列顺序对各差值进行排列。其中,预设的排列顺序可以根据用户的实际需要进行设置,当确定预设的排列顺序之后,对同一用户所获得的横向信息相同。本发明实施例通过预设的排列顺序对获得的差值进行排列,提高了横向信息的保密性。
可选的,所述预设的排列顺序包括:各图像组的排列顺序和/或每个图像组内所述五官特征点的排列顺序,其中,不同的图像组内所述五官特征点的排列顺序相同或不同。
s180、对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值。
具体的,本发明实施例可以将人脸正面图像的纵向信息和横向信息采用sha256算法进行哈希化处理。本发明实施例可以首先将纵向信息和横向信息采用主成分分析(principalcomponentsanalysis,pca)技术进行降维处理,将降维后的纵向信息和横向信息转换为由0和1字段组成的初始序列值,对初始序列值附加填充比特和附加长度后进行位运算,获得64位16进制且长度为256的哈希序列值。
s190、在所述区块链网络中查找所述哈希序列值,根据查找结果确定所述人脸正面图像对应的用户的身份信息。
可选的,本发明实施例提供的另一种基于区块链的身份识别方法,步骤s190可以包括:
当所述查找结果为所述区块链网络中存在所述哈希序列值时,获得所述区块链网络中保存的、与所述哈希序列值对应的用户身份信息。
本发明实施例提供的一种基于区块链的身份识别方法,应用于区块链网络,所述方法包括:对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;将所述五官特征点的二维坐标与所述五官特征点的二维坐标在所述深度信息中对应的深度参数结合,确定所述五官特征点的三维坐标,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;将所述人脸正面图像进行卷积处理,获得多个不同尺度的人脸特征图像;根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中所述五官特征点的灰度值的差值;按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;在所述区块链网络中查找所述哈希序列值,根据查找结果确定所述人脸正面图像对应的用户的身份信息。本发明实施例通过对人脸正面图像的图像信息生成的哈希序列值,并在区块链网络中确定该哈希序列值是否存在,以确定该人脸正面图像对应的用户的身份信息,提高了身份识别的效率。
如图4所示,本发明实施例提供的一种基于区块链的信息保存方法,应用于区块链网络,所述方法包括:
s200、对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标。
s210、对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息。
s220、根据所述人脸正面图像中五官特征点的二维坐标与所述人脸正面图像的深度信息,确定所述五官特征点的三维坐标信息,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息。
s230、将所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像,其中,所述人脸特征图像的数量与所述预设的卷积参数有关。
s240、根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值。
s250、从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同。
s260、对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中五官特征点的灰度值的差值。
s270、按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息。
s280、对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值。
步骤s200至s280的原理与步骤s100至s180的原理相似,此处不再赘述。
s290、将所述哈希序列值保存到所述区块链网络中。
本发明实施例提供的一种基于区块链的信息保存方法,应用于区块链网络,所述方法包括:对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;根据所述人脸正面图像中五官特征点的二维坐标与所述人脸正面图像的深度信息,确定所述五官特征点的三维坐标信息,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;将所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像,其中,所述人脸特征图像的数量与所述预设的卷积参数有关;根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中五官特征点的灰度值的差值;按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;将所述哈希序列值保存到所述区块链网络中。本发明实施例通过将人脸正面图像对应的哈希序列值保存在区块链网络中,便于后续用户通过该区块链网络中保存的哈希序列值进行身份识别,提高了身份识别的效率。
可选的,如图5所示,本发明实施例提供的另一种基于区块链的信息保存方法,在步骤s290之后,还可以包括:
s300、将与所述哈希序列值对应的用户的身份信息保存至所述区块链网络中。
需要注意的是,本发明实施例可以对区块链网络按照预设的时间间隔检测区块链网络中新区块的生成时间,当在预设的时间间隔内生成新区块的平均生成时间大于预设时间时,本发明实施例可以降低新区块的生成时间,以保证哈希序列值和/或与所述哈希序列值对应的用户的身份信息可以及时保存至区块链网络中。
与上述方法实施例相对应,本发明实施例还提供了基于区块链的身份识别装置和基于区块链的信息保存装置。
如图6所示,本发明实施例提供的一种基于区块链的身份识别装置,应用于区块链网络,所述装置包括:特征点二维坐标确定单元100、深度信息获得单元110、纵向信息确定单元120、人脸特征图像获得单元130、灰度值确定单元140、图像组获得单元150、灰度差值获得单元160、横向信息确定单元170、哈希序列值获得单元180和身份信息确定单元190。
所述特征点二维坐标确定单元100,用于对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标。
其中,人脸正面图像为可以显示人脸五官的平面图像。五官特征点包括左眉特征点、右眉特征点、左眼特征点、右眼特征点、左耳特征点、右眼特征点、鼻子特征点和口部特征点。
具体的,特征点二维坐标确定单元100可以通过人脸正面图像中人脸的肤色以及人脸正面图像的哈尔特征(haar-likefeatures)确定人脸正面图像中人脸的区域位置。通过现有的人脸五官识别方法确定人脸正面图像中的五官特征点的位置。人脸五官识别方法可以包括:基于灰度值变化信息法、基于主动轮廓模型法(activecontourmodel,acm)以及主动形状模型法(activeshapemodel,asm)等。本发明在此不作进一步的限定。需要注意的是,根据选择人脸五官识别方法的不同,本发明实施例确定的五官特征点的数量也不同。例如,百度大脑人脸五官识别法可以确定72个五官特征点。腾讯ai人脸五官识别法可以确定88个五官特征点。
特征点二维坐标确定单元100可以通过预先训练好的人脸五官识别模型对人脸正面图像进行人脸五官识别。具体的,该人脸五官识别模型可以是卷积神经网络模型。
具体的,特征点二维坐标确定单元100可以先将该至少一个人脸正面训练图像中的全部图像进行尺度变换至预设的人脸标准大小,接着对该至少一个人脸正面训练图像进行降维处理,再对尺度相同的该至少一个人脸正面训练图像中的五官特征点进行机器学习。其中,尺度变换可以包括:平移、缩放和旋转中的至少一个。预设的人脸标准大小可以为技术人员实际确定的人脸形状大小。
特征点二维坐标确定单元100在将人脸正面图像输入至训练好的人脸五官识别模型中进行五官特征点识别时,可以先将人脸正面图像进行尺度变换至预设的人脸标准大小后,再识别该人脸正面图像上的五官特征点。本发明实施例避免了人脸正面图像的尺度与人脸五官识别模型训练所用的人脸正面训练图像的尺度不一致,导致人脸五官识别模型对人脸正面图像的五官特征点识别不准确的问题。
本发明实施例可以人脸正面图像上识别到的鼻子特征点作为坐标原点建立坐标轴。具体的,特征点二维坐标确定单元100可以在尺度为预设的人脸标准大小的人脸正面图像上的鼻子特征点作为坐标原点,建立水平和垂直两条坐标轴从而确定人脸正面图像中五官特征点的二维坐标。
所述深度信息获得单元110,用于对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息。
具体的,深度信息获得单元110可以使用单目深度估计方法或双目深度估计方法对人脸正面图像进行深度检测,以获得该人脸正面图像的深度信息。
可选的,所述深度信息获得单元110具体用于将所述人脸正面图像输入至预设的三维人脸模型进行深度检测,获得所述人脸正面图像的深度信息。
具体的,深度信息获得单元110可以通过深度摄像机采集的至少一个人脸深度图像进行机器学习,获得预设的三维人脸模型。
所述纵向信息确定单元120,用于将所述五官特征点的二维坐标与所述五官特征点的二维坐标在所述深度信息中对应的深度参数结合,确定所述五官特征点的三维坐标,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息。
具体的,在纵向信息确定单元120获得人脸正面图像的深度信息后,本发明实施例根据五官特征点的二维坐标,可以在该深度信息中确定与五官特征点的二维坐标对应的深度参数,该深度参数即为该五官特征点的除该二维坐标以外的第三维坐标。例如,人脸正面图像的二维坐标为分别为x和y,与x和y对应的深度参数为z,则该人脸正面图像的三维坐标为x、y和z。
所述人脸特征图像获得单元130,用于将所述人脸正面图像进行卷积处理,获得多个不同尺度的人脸特征图像。
具体的,人脸特征图像获得单元130可以通过特征提取网络,获得多个不同尺度的人脸特征图像。特征提取网络可以包括resnext-50、resnext-101、resnext-152和densenet在内的卷积神经网络。
可选的,所述人脸特征图像获得单元130具体用于通过gabor滤波器对所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像。
其中,所述预设的卷积参数为滤波波长尺度间隔为3,滤波方向间隔为π/8,调谐函数的相位偏移为0,带宽为2π和空间系数为0.5。
所述灰度值确定单元140,用于根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值。
所述图像组获得单元150,用于从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同。
可选的,任一图像组中的两个人脸特征图像的尺度相邻。
所述灰度差值获得单元160,用于对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中所述五官特征点的灰度值的差值。
所述横向信息确定单元170,用于按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息。
可以理解的是,由于五官特征点可以有很多个,为了使本发明实施例获得的横向信息具有唯一性,横向信息确定单元170需要按照预设的排列顺序对各差值进行排列。其中,预设的排列顺序可以根据用户的实际需要进行设置,当确定预设的排列顺序之后,对同一用户所获得的横向信息相同。本发明实施例通过预设的排列顺序对获得的差值进行排列,提高了横向信息的保密性。
可选的,所述预设的排列顺序包括:各图像组的排列顺序和/或每个图像组内所述五官特征点的排列顺序,其中,不同的图像组内所述五官特征点的排列顺序相同或不同。
所述哈希序列值获得单元180,用于对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值。
具体的,本发明实施例可以将人脸正面图像的纵向信息和横向信息采用sha256算法进行哈希化处理。本发明实施例可以首先将纵向信息和横向信息采用主成分分析(principalcomponentsanalysis,pca)技术进行降维处理,将降维后的纵向信息和横向信息转换为由0和1字段组成的初始序列值,对初始序列值附加填充比特和附加长度后进行位运算,获得64位16进制且长度为256的哈希序列值。
所述身份信息确定单元190,用于在所述区块链网络中查找所述哈希序列值,根据查找结果确定所述人脸正面图像对应的用户的身份信息。
可选的,所述身份信息确定单元190具体用于当所述查找结果为所述区块链网络中存在所述哈希序列值时,获得所述区块链网络中保存的、与所述哈希序列值对应的用户身份信息。
本发明实施例提供的一种基于区块链的身份识别装置,应用于区块链网络,该装置可以对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;将所述五官特征点的二维坐标与所述五官特征点的二维坐标在所述深度信息中对应的深度参数结合,确定所述五官特征点的三维坐标,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;将所述人脸正面图像进行卷积处理,获得多个不同尺度的人脸特征图像;根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中所述五官特征点的灰度值的差值;按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;在所述区块链网络中查找所述哈希序列值,根据查找结果确定所述人脸正面图像对应的用户的身份信息。本发明实施例通过对人脸正面图像的图像信息生成的哈希序列值,并在区块链网络中确定该哈希序列值是否存在,以确定该人脸正面图像对应的用户的身份信息,提高了身份识别的效率。
如图7所示,本发明实施例提供的一种基于区块链的信息保存装置,包括:特征点二维坐标确定单元100、深度信息获得单元110、纵向信息确定单元120、人脸特征图像获得单元130、灰度值确定单元140、图像组获得单元150、灰度差值获得单元160、横向信息确定单元170、哈希序列值获得单元180和保存单元200。
所述特征点二维坐标确定单元100,用于对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标。
所述深度信息获得单元110,用于对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息。
所述纵向信息确定单元120,用于根据所述人脸正面图像中五官特征点的二维坐标与所述人脸正面图像的深度信息,确定所述五官特征点的三维坐标信息,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息。
所述人脸特征图像获得单元130,用于将所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像,其中,所述人脸特征图像的数量与所述预设的卷积参数有关。
所述灰度值确定单元140,用于根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值。
所述图像组获得单元150,用于从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同。
所述灰度差值获得单元160,用于对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中五官特征点的灰度值的差值。
所述横向信息确定单元170,用于按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息。
所述哈希序列值获得单元180,用于对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值。
所述保存单元200,用于将所述哈希序列值保存到所述区块链网络中。
本发明实施例提供的一种基于区块链的信息保存装置,应用于区块链网络,该装置可以对人脸正面图像进行人脸五官识别,确定所述人脸正面图像中五官特征点的二维坐标;对所述人脸正面图像进行深度检测,获得所述人脸正面图像的深度信息;根据所述人脸正面图像中五官特征点的二维坐标与所述人脸正面图像的深度信息,确定所述五官特征点的三维坐标信息,将所述五官特征点的三维坐标信息确定为所述人脸正面图像的纵向信息;将所述人脸正面图像按照预设的卷积参数进行卷积处理,获得多个不同尺度的人脸特征图像,其中,所述人脸特征图像的数量与所述预设的卷积参数有关;根据所述五官特征点的二维坐标,确定所述五官特征点在各尺度的所述人脸特征图像中的灰度值;从各尺度的所述人脸特征图像中获得多个图像组,每个图像组中均包括两个不同尺度的人脸特征图像且各图像组中的人脸特征图像不完全相同;对每个图像组:获得该图像组中两个不同尺度的人脸特征图像中五官特征点的灰度值的差值;按照预设的排列顺序,对获得的各差值进行排列,获得差值序列,将所述差值序列确定为所述人脸正面图像的横向信息;对所述人脸正面图像的纵向信息和所述人脸正面图像的横向信息进行哈希处理,获得与所述人脸正面图像对应的哈希序列值;将所述哈希序列值保存到所述区块链网络中。本发明实施例通过将人脸正面图像对应的哈希序列值保存在区块链网络中,便于后续用户通过该区块链网络中保存的哈希序列值进行身份识别,提高了身份识别的效率。
可选的,保存单元200还可以用于将与所述哈希序列值对应的用户的身份信息保存至所述区块链网络中。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。