新闻  |   论坛  |   博客  |   在线研讨会
【原创】人脸识别算法的工作原理
tuozi241 | 2022-01-19 16:45:11    阅读:482   发布文章

什么是人脸识别?

人脸识别是一种软件层面的算法,用于通过处理视频帧或数字图像来验证或识别一个人的身份,其中该人的脸是可见的。面部识别技术有几种不同的工作方法,但是他们通常会将图像中的面部特征与数据库中的面部特征进行比较。


人脸识别处理的4个步骤


特定的神经网络被训练用来检测人脸的标签,并将人脸与图像中的其他物体区分开来。标签是人类普遍的五官等面部特征,比如:眼睛、鼻子、嘴巴、眉毛等。


人脸识别算法的工作流程



任何人脸检测和识别系统或软件都绕不开人脸识别算法。业界将这些算法分为两种:

1. 几何方法侧重于区分特征

简而言之就将2D照片投影到3D模型上

例如:当一张脸被包裹在3D模型周围时,会显示出在静态和平坦的图像中更难找到的显著特征。位深度投影可以解决2D面部识别的局限性,在这种情况下,你不需要在苛刻的光照条件下拍摄图像,就能达到较高的精确度。


位深度投影可以解决2D面部识别的局限性


2. 光度统计方法用于从图像中提取数值

即每个像素都被替换为相对光照的对比度表示,这意味着它显示了像素的亮度与周围像素的对比情况,此测量方法使在多种照明形式中识别同一个面变得更容易。


统计光度对比后提升了多种光照方向时的识别性能



人脸识别算法是基于数学计算的,神经网络同时进行大量的数学运算。这些算法执行三个主要任务:在图像、视频或实时流媒体中检测人脸、计算人脸的数学模型,并将模型与训练集或数据库进行比较以识别或验证人脸是否符合数据库中的信息。由于没有一种完美的人脸识别算法,每种方法都有其在特定条件下的优势所在,本文将介绍14种常见的面部识别算法: 


  • 卷积神经网络(CNN)

卷积神经网络(CNN)是人工神经网络(ANN)在AI业界近些年发展有很多突破,它是深度学习(DL)中最常用的算法之一。DL是机器学习(ML)的子集,DL模型学习直接对图像、视频、文本或声音执行分类任务,该模型在CV、NLP和最大的图像分类数据集(Image Net)等领域都取得了较为重大的成果。CNN具有卷积层和池层,每一层都要学会检测不同的成像特征。


基于CNN的人脸情感分析



  • Eeigenfaces

如果需要确定图像数据集中人脸方差的人脸检测时,就需要用到Eeigenfaces算法。它利用这些变量,通过机器学习对人脸进行编码和解码。一组Eeigenfaces是通过对大量人脸图像的统计分析确定的“标准化人脸成分”的集合。面部特征被赋予常数值,因为这种方法不使用数字图片,而是使用统计数据库。任何人脸都是这些值的不同百分比的组合。


Eeigenfaces样本案例



  • Fisherfaces

Fisherfaces也是常见的人脸识别算法之一,作为对 Eeigenfaces 算法的一种改进,它经常被拿来与 Eigenfaces 进行比较,并且在训练过程中被认为达到了更高的优化层级。这种算法的关键优势是它能够插值和外推照明和面部表情的变化。在模型的预训练阶段,已有报告指出将基于Fisherfaces与基于PCA的算法相结合,可以达到93%的准确率。


Fisherfaces样本案例



  • PCA

主成分分析(PCA)是一种通用的统计方法,具有许多实际的应用。在人脸识别工作流程中,PCA的目标是在保留最相关信息的同时减小源数据的大小。它产生一组加权的特征向量,然后由这些特征向量构成特征脸——不同人脸图像的广泛集合。特征脸的线性组合代表训练集中的每一张图像。PCA用于接收这些特征向量,这些特征向量来自训练图像集的协方差矩阵。对于每个图像,计算其主要成分(从5到200)。其他组件编码面孔和噪音之间的细微差别。识别过程包括将未知图像的主要组成部分与所有其他图像的组成部分进行比较。


PCA目标检测处理流程



  • SVM

支持向量机( support vector machine—SVM )是一种利用二组分类原理区分人脸和非人脸的ML算法。对于每一类,SVM模型接收一个标记的训练数据集来分类新的测试数据。研究者应用线性和非线性SVM训练模型进行人脸识别。最近的结果表明,非线性训练机具有更大的余量和更好的识别和分类结果。


SVM分类器特征点距离



  • Haar Cascade

Haar Cascade是一种目标检测方法,用于在图像上定位目标。该算法从大量正值和负值样本中学习-前者包含感兴趣的对象,后者包含您要查找的对象以外的任何对象。经过训练,分类器可以在新的图像上找到感兴趣的对象。将该方法应用于刑事识别中,并结合局部二值模式算法进行人脸识别。Haar级联分类器使用200个(满分6000个)特征,即使在表情不同的情况下也能确保85-95%的识别率。


Haar Cascade处理流程



  • 3D识别

3D人脸识别技术的底层逻辑是基于识别是人类头骨的独特结构,因为每个人的头骨结构都是第一无二的,它们可以用几十个参数来描述。这种面部识别方法基于将3D面部扫描与数据库模式进行比较。它有一个特殊的优势——化妆、面部毛发、眼镜和类似因素不会影响检测和识别过程。最新的研究使用了在规则的2D网格上绘制三维几何信息的技术。它允许将3D数据的描述性与2D数据的计算效率相结合,并显示了在FRGC v2(人脸识别大挑战3D人脸数据库)上报告的最高性能。


根据头骨三维检测的分析



  • 皮肤纹理分析

皮肤识别技术在皮肤检测、图像滤波、手势分析等领域有着广泛的应用。它通常使用高分辨率的图像。皮肤纹理分析的特殊情况使用不同的独特参数,如色沉、瘢痕、毛孔、卟啉分布等参数。最近的一项基于纹理特征和肤色结合的研究显示了有趣的结果。研究人员使用神经网络来开发和测试皮肤识别系统。项目中使用的前馈神经网络将输入纹理图像分为“皮肤”和“非皮肤”,并显示出很高的识别效率与准确性。


visia在皮肤检测的应用案例



  • 热成像仪

热像仪是一种用于监测被测表面温度分布的装置。温度分布显示为与温度对应的不同颜色的彩色图片。这项技术已经有了几个适应全球变化的实际应用——基于智能手机的免疫证书、远程发烧检测和热面部识别。热人脸识别模型是基于人脸的独特温度模式。人体温度的标签是用热红外(IR)来测量的。热成像仪人脸识别也具备与3D识别同样的优势,即化妆、面部毛发、帽子和眼镜不会影响其准确性,它甚至还能精确的区分双胞胎兄弟姐妹。


通过热成像仪检测出的温度确定每个标签的位深



  • 自适应神经模糊干扰系统

自适应神经模糊干扰系统(ANFIS)是一种人工神经网络。该系统综合了神经网络原理和模糊逻辑原理,并将它们的优点融合在一个单一的结构中。在预处理阶段,采用自适应神经模糊推理系统对从数据集中提取的图像特征进行分类。数据科学家将这种方法与各种特征提取算法结合起来。一些项目的测试结果表明:采用二维主成分分析进行特征提取后,ANFIS 的分类准确率达到了97.1% 。


样本扩增对ANFIS识别率的影响



  • 局部二值模式直方图(LBPH )

这种方法使用了一种简单有效的计算机视觉纹理操作局部二值模式,它通过设置每个像素的邻域阈值并将结果作为二进制数来标记图像中的像素。在学习阶段,LBPH 算法为每个被标记和分类的图像创建直方图。每个直方图代表训练集中的每个图像。这样,实际的识别过程就意味着比较任意两幅图像的直方图。


局部二值模式直方图(LBPH )的处理流程



  • FaceNet

人脸识别系统 FaceNet 是由谷歌研究人员于2015年开发的,基于人脸识别基准数据集。可用的预先培训模型和各种开放源码的第三方实现使这个系统相当广泛地推广。FaceNet 在调查研究、测试性能和准确性方面比早期开发的其他算法都有出色的表现。FaceNet 精确提取人脸嵌入信息,用于后期人脸识别系统训练的高质量特征。


FaceNet的处理流程



  • NEC

该解决方案由日本NEC科技公司开发,可以在识别年龄变化的同时,高度准确地识别人。该解决方案使用自适应区域混合匹配(Adaptive Region Mixed Matching),这是一个专注于高度相似的片段进行映射的模型。NEC技术将输入图像和注册图像分成小段,只关注更相似的段。即使戴着口罩或眼镜,也能显示出更高的识别准确率。作为其基础算法,NEC解决方案使用广义学习向量量化(GLVQ)。


NEC的处理流程



  • 旷视 (FACE++)

中国旷视科技在推出人脸识别应用平台后,已经成为世界知名公司。这是一个多用途的软件。该算法基于图像检测和模糊图像搜索技术。这个技术解决方案使用了公司专有的基于大数据的深度学习框架MegEngine。该公司的技术成功地完成了面部信息抽取识别,包括几个关键特征: 人脸和人脸检测和跟踪、人脸识别和聚类、关键点检测、人脸属性估计和人脸搜索引擎。


旷视科技皮肤检测案例



随着工业界对准确率的更高要求,想要进一步提升模型的泛化能力,需要将不同算法组合来解决面部识别过程中的许多常规问题:比如面部表情、姿势、光照条件、图像噪声等因素对识别过程带来的差异。最新的实验将LBP算法与先进的图像处理技术相结合: 双边滤波、直方图均衡化、对比度调整和图像混合,通过结合后的算法取得了长足的进步。


Reference: 

吴敏, 苏婉娟, 陈略峰,等. 一种基于深度稀疏卷积神经网络人脸情感识别方法:, CN107506722A[P].

Yang M H, Ahuja N, Kriegman D. Face recognition using kernel eigenfaces[C]//Proceedings 2000 International Conference on Image Processing (Cat. No. 00CH37101). IEEE, 2000, 1: 37-40.

Yang M H. Kernel Eigenfaces vs. Kernel Fisherfaces: Face Recognition Using Kernel Methods[C]//Fgr. 2002, 2: 215.

Zhou C, Wang L, Zhang Q, et al. Face recognition based on PCA image reconstruction and LDA[J]. Optik, 2013, 124(22): 5599-5603.

Wei J, Jian-Qi Z, Xiang Z. Face recognition method based on support vector machine and particle swarm optimization[J]. Expert Systems with Applications, 2011, 38(4): 4390-4393.

Padilla R, Costa Filho C F F, Costa M G F. Evaluation of haar cascade classifiers designed for face detection[J]. World Academy of Science, Engineering and Technology, 2012, 64: 362-365.

Mahoor M H, Abdel-Mottaleb M. Face recognition based on 3D ridge images obtained from range data[J]. Pattern Recognition, 2009, 42(3): 445-451.

Määttä J, Hadid A, Pietikäinen M. Face spoofing detection from single images using micro-texture analysis[C]//2011 international joint conference on Biometrics (IJCB). IEEE, 2011: 1-7.

Kong S G, Heo J, Abidi B R, et al. Recent advances in visual and infrared face recognition—a review[J]. Computer Vision and Image Understanding, 2005, 97(1): 103-135.

Rejeesh M R. Interest point based face recognition using adaptive neuro fuzzy inference system[J]. Multimedia Tools and Applications, 2019, 78(16): 22691-22710.

Zhang J Y, Zhao H P, Chen S. Face recognition based on weighted local binary pattern with adaptive threshold[J]. 电子与信息学报, 2014, 36(6): 1327-1333.

Schroff F, Kalenichenko D, Philbin J. Facenet: A unified embedding for face recognition and clustering[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2015: 815-823.

Cox I J, Ghosn J, Yianilos P N. Feature-based face recognition using mixture-distance[C]//Proceedings CVPR IEEE Computer Society Conference on Computer Vision and Pattern Recognition. IEEE, 1996: 209-216.

Masi I, Trần A T, Hassner T, et al. Do we really need to collect millions of faces for effective face recognition?[C]//European conference on computer vision. Springer, Cham, 2016: 579-596.


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
分享对于半导体、AI与IoT产业的一些见解与分析
推荐文章
最近访客