人脸识别算法Gface - 深圳泰首智能技术有限公司 | 身证通

人脸识别算法Gface 201716-2

您现在的位置:首页 > 人脸识别算法Gface

Gface 5——高速人脸识别算法

有素描常识的人都清楚,人脸不动的是眉弓到颧骨到鼻骨、上颚骨形成的金五角区域,不管做什么夸张表情,不管胖瘦的变化,不管什么角度,这个区域都保持相对固定的几何关系。基于这些不变的因素我们采用深度学习的方法发明了骨点五角人脸识别算法,本算法不受肤色、种族干扰,同时能很好的避开表情变化、胡须伪装、角度偏差、发际改变、眼镜装饰、口部遮挡等环境因数人脸识别的影响。

年龄性别算法——身份证识别的难点

随着年龄的增长,人的面部结构会发生细微变化,儿童时期的脸型和青少年时期不同,青年时期和中年以后又不同。不过变化最大的是从儿童到青年、从中年到老年两个时期。如脸颊变长、下颌骨、眉骨、腮肉、上颌骨、唇部都会有比较大的变化,再加上皱纹、毛发或疤痕等,会使人的面部产生改变,进而影响人脸识别的效果。而身份证的有效期一般是5-20年周期,人证识别如何解决年龄跨度的问题,是人脸识别效果的致命因素。算法团队从更容易实现的年龄估算、性别判断出发,独创性地研发了全新的识别算法AGface,显著提升了跨年龄人脸识别的效果。具体来说,这种全新的算法是用一种竞争性任务学习算法,在一个共同优化框架中将两个任务结合起来。通过这种方式,从年龄估算中获取的信息,能有效地帮助跨年龄人脸识别的特征选择。

多种算法结合——人脸识别的新成果

结合几种人脸识别算法,以及年龄算法、性别算法、颜色算法、跟踪算法等多种识别算法对目标对象从不同维度进行比较识别,能有效提高识别的准确度,减少误报干扰,使动态人脸识别达到实战使用标准。

Gface人脸识别技术路线简介:

1 身份证识别模块和与身份核查设备的集成

图1身份证识别模块示意图

第二代身份证采用非接触式IC卡技术的二代证,可以实现个人身份信息的交流,二代证读取系统包括身份证卡、阅读器和应用软件三大部分组成。该模块通过标准协议读取身份证信息以及存在芯片的照片文件,同时启动核查设备的摄像头,抓取当前用户的实时视频以及人脸图像,最后通过USB口将身份证照片和摄像照片传给中心CPU或处理单元,用于下一步处理。

2 基于深度学习的人脸比对框架

在实际应用中,利用人脸验证技术可以确认身份证、护照、驾驶证等证件的真假,可以鉴别某个人是否是合法人员;可以在火车站、地铁站、飞机场等人流量大的地方快速搜索指定嫌疑人。从技术研究上分析,人脸识别验证可以成为整个自动人脸识别系统的最后一个步骤。根据人脸图像特征的提取结果,将待验证的人脸和人脸数据库中的人脸数据进行比较,判断出待检验人脸身份信息。简单来说,就是两张人脸图像的对比,判定是否为同一人。

图2: 基于深度学习的人脸比对

如图2所示,对于数据库中的一组人脸图像,基于深度学习的方法进行人脸特征学习,根据人脸特征进行验证模型拟合(如:支持向量机、最近邻算法、欧式距离等)判断是否是同一个人脸图像。在人脸多属性识别的基础上,每个身份ID的多属性(如:年龄、姿态和表情等)与深度神经网络学习得到的人脸特征一一对应,然后利用深度学习到的高维特征向量,进行人脸验证。每个属性的人脸特征向量,对应着神经网络中损失函数之前的全链接层fc2,其神经元的参数即为深度学习得到的人脸特征。由于每一张人脸图像对应着多个属性信息(如人脸表情特征、年龄特征等),可以更加准确的描述人脸图像特征,有效的从多个角度进行人脸验证。

3 基于多属性的跨年龄、姿态和光照深度网络构建

在身份比对系统中,采集到的人脸图像,往往是多姿态、多表情、光照环境变化大,并且图像的分辨率偏低,造成人脸图像识别性能的下降,而如何联合考虑多种人脸属性因素是人脸识别中最为突出的难题。而现有的一些机器学习方法(如支持向量机、核函数、流形学习等)大多是浅层结构。脑科学研究表明,浅层结构难以有效地表示人脸识别中非线性的复杂变化,尤其当人脸图像受分辨率低、多姿态变化、年龄跨度大、环境光照变化大等的影响。针对二维视觉信号,深度学习可通过学习一种深层非线性的二维卷积神经网络结构,实现复杂函数逼近,表征输入视觉信号的丰富含义,并体现了他对于输入视觉样本数据的强大的本质特征抽取能力。

本项目在人脸图像检测和特征点检测的基础上,基于深度学习卷积神经网络框架,进行身份ID、年龄、性别、表情和姿态等多人脸属性/任务的深度学习研究。其中本项目所采用的深度学习卷积神经网络,是具有易扩展、快速的Caffe框架。Caffe是纯粹的C++/CUDA架构,支持命令行、Python和MATLAB接口;可以在CPU和GPU直接无缝切换。基于多个人脸属性的深度神经网络框架,可以同时规则化学习多属性/任务的卷积神经网络,有效防止由于高效的神经网络学习能力引起的过拟合现象。每个人脸属性对应着一个损失函数(如softmax 损失函数、L2损失函数等),深度卷积神经网络通过反向传播梯度下降法,最小化多个损失函数来共同优化深度卷积神经网络的共有部分。基于多人脸属性的深度学习,一方面能够高效优化卷积神经网络参数,防止因为拟合一种人脸属性而引起的过拟合现象,另一方面仅利用一个神经网络流程,就可以同时得到多个人脸属性,可以有效的从多个方面进行人脸身份ID的识别。

图3多属性深度网络架构

在图3基于深度学习的人脸属性识别框架中,输入是256*256*3的人脸图像,在经过深度卷积神经网络学习后,对应着人脸身份、年龄、性别和表情等的识别结果。整个神经网络中有6千万个神经网络参数和65万个神经元,包含5个卷积层,其中有几个卷积层有max-pooling层,有一个多人脸属性公用的全连接层fc1 (fully connected layer), 每个人脸属性分别对应着一个全连层 (fc2) 和一个N-way softmax层. 在深度学习过程中,用到的两个策略:一方面为了加速深度学习,使用GPU硬件和非饱和神经元:;另一方面为了减少全连接层中的过拟合现象,利用一种最近发现的规则化方法dropout策略和扩大数据策略。其中dropout方法是对输入网络的样本进行权值更新时,隐含节点都是以一定概率随机出现,因此不能保证每2个隐含节点每次都同时出现,这样权值的更新不再依赖于有固定关系隐含节点的共同作用,阻止了某些特征仅仅在其它特定特征下才有效果的情况;扩大数据策略是对训练数据进行左右对称以及平移变换,将训练数据增加为原来的N倍。在深度学习中,利用反向传播算法来更新网络参数,即通过迭代优化网络的权值使得输出与输入之间的实际映射关系与所期望的映射关系一致,采用梯度下降算法通过调整各层权值求目标函数最小化。

4 光照处理和模糊人脸重构

针对复杂光照下,光照不均的人脸图像进行光照补偿,采用一种基于OTSU多阈值分割思想的自适应Gamma校正新算法。该算法利用OTSU分割算法将人脸光照图像进行划分,最大程度的降低了光照不均匀人脸图像对人脸识别精度的影响,将得到的不同区间的阈值采用二叉树进行存储,然后再基于Gamma校正算法使用迭代算法得到质量最佳的图像。

为了解决光照不均造成人脸误判率高的问题,提出了一种基于光照类型估计的自适应人脸预处理方法。另外,提出了一种针对Local Binary Pattern (LBP) 局部二值模式和Local Ternary Pattern (LTP)局部三值模式的改进算法。首先利用OTSU多阈值分割和累计直方图相关算法对捕获到的人脸图像进行类型归类。然后根据分类后的图像类型来判断是否要进行自适应Gamma校正处理。最后将输入的所有类型图像执行DOG(Difference of Gaussian)滤波和均衡化操作,最终输出处理后的人脸图像。

由于摄像头和物体的距离较远,被拍摄物体又在运动过程中,移动视频监控系统中拍摄到的人脸往往不清晰,缺少细节信息从而大大影响识别系统的准确性。目前该领域的一些算法主要通过主成分分析(PCA)来重建清晰人脸,然而PCA是基于整体人脸的,通常容易受遮挡影响。本项目将尝试把人脸分为不同的小部分,对每部分通过训练图象进行重建的方法得到清晰人脸。在学习过程中,我们将首先把人脸的每个部分表示为模糊训练图象的线性组合,然后把组合系数作用在对应的清晰图象上合成清晰人脸。目前该领域的研究还处于起步阶段,本项目的实施有助于创新成果的产生。

 

回到顶部