在人们日常生活中,最常见的生物识别方式一定是人脸识别,身份验证、门禁、监控等都需要用上人脸识别。对于数据结构工程师和算法工程师来说,人脸识别算法是需要接触的常见算法之一。那么今天将带大家盘点下七种最常见也是最需要了解的人脸识别算法,感兴趣的小伙伴们别忘给我点赞。
玩转数据结构,提升算法能力
选择凡亿教育的《数据结构与算法实战课程》
1、卷积神经网络(CNN)
卷积神经网络(CNN)是一类包含卷积计算且具有深度结构的前馈神经网络,也是人工神经网络和人工智能的常见算法之一,隶属于机器学习中的深度学习。它的原理是:模型学习直接对图像、视频、文本或声音执行分类结果。它常用于计算机视觉、自然语言处理和最大的图像分类数据集。
2、特征脸(Eigenface)
特征脸(Eigenface)是指用于机器视觉领域中的人脸识别问题的一组特征向量,用于确定图像数据集中的人脸方差,被认为是第一种有效的人脸识别方法。原理是通过机器学习对人脸进行编码解码。一组特征脸是通过对大量人脸图像的统计分析确定的“标准化人脸成分”的集合,注意这种算法不使用数字图片,而是通过统计数据库,面部特征被分配数字值,人脸是这些值以不同百分比的组合。
3、Fisherfaces
Fisherfaces是最流行的人脸识别算法之一,是特征脸(Eigenface)算法的延伸品,在训练过程中的类别区分方面比特征脸更加优秀。Fisherfaces的优点在于它能够对光照和面部表情变化进行内插和外推。若在与处理阶段与PCA方法结合,算法准确度高达93%。
4、内核方法:PCA和SVM
主成分分析(PCA)是一种有用的通用统计方法,在人脸识别过程中,PCA能减少源数据同时保留最相关的信息,原理是:生成一组加权特征向量,这些特征向量依次构建特征脸(大量不同的人脸图像),而这些人脸图像的线性组合代表训练集中的每个图像,PCA作用是从训练图像集的协方差矩阵中接收这些特征向量。
支持向量机(SVM)属于机器学习算法,它使用两组分类原则来区分人脸和非人脸,对于每个类别,SVM模型将接收一个标记的训练数据集来对新的测试数据进行分类。
5、Haar Cascade
Haar Cascade是一种用于在图像上定位对象的对象检测方法,他将从大量正样本和负样本中学习,前者包括感兴趣的对象,后者包括除你要查找对象之外的任何内容。训练后,分类器可在新图像上找到感兴趣的对象。Haar Cascade常与局部二值模式算法结合用于刑事鉴定的人脸识别。
6、三维识别
3D人脸识别的基本原理是人类头骨的独特结构,人的头骨结构具有独特性,可用几十个参数来描述,它的原理是将3D面部扫描与数据库模式进行比较,它最大的优势是不会因为化妆、面部毛发等外界因素影响到检测识别。
7、皮肤纹理分析
皮肤纹理识别通常使用高分辨率图像。皮肤纹理分析的特殊情况使用不同的独特参数,如痣、肤色、肤色等,常用于人脸检测、不良图像过滤、手势分析等。
欲了解更多的人脸识别知识,来关注凡亿课堂。