今天给大家带来一篇人脸识别中的脸型识别,不同的脸型适合的眼镜发型不同,那么计算机要如何基于人脸图像来确定脸型呢?
1 概述人脸脸型就是指我们平时常说的,瓜子脸、圆脸、方脸等。人脸脸型分类就是算法根据一张包含面部的照片推测出人脸属于那种脸型,是人人都爱的瓜子脸还是有正义感的国字脸(也就是方形脸)等。
人脸脸型分类过程一般分为人脸检测、面部特征点定位,然后在此基础上根据合适的参数进行分类,例如人脸的宽高比、眼睛位置等。
目前比较大的几个平台中,在腾讯AI平台和face++人工智能开放平台的人脸检测、人脸属性功能中都没有提供脸型分类的输出信息,只有在百度云的人脸识别中有脸型分类的输出结果。如下是face++人工智能开放平台的人脸识别演示,包含了常见的年龄、性别等,但是没有脸型结果:
在百度云的人脸识别的人脸检测与属性分析中有实现脸型分类的输出结果。接下来我们测试一下分类效果,实际检测输出包括年龄、性别、表情等,为了演示只保留了脸型结果。使用测试图像前六幅来自celebA数据集,第七幅和第八幅正脸和侧脸对比的图像来自IMM数据集,最后一幅是百度云平台的演示图片。测试图像中选取了戴墨镜、帽子和胡子的人像,还有头发有遮挡的,同一人同背景的正脸和侧脸,总体分类效果很好,不过由于对于脸型分类主观因素影响比较大,有几个个人感觉应该是瓜子脸的分为了心形,同时由于侧脸脸部特征比较少,缺少横向的宽度等信息,分类不够准确。百度云的分类结果分为5类,方形(square)、三角形(triangle)、椭圆形(oval)、心形(heart)和圆形(round)。以下是百度云的脸型分类的效果:
链接是https://cloud.baidu.com/product/face
人脸脸型分类可以进一步辅助人脸表情识别,还可以根据脸型选择合适得眼镜、发型等,美容行业也可以根据脸型进行五官调整。
2 人脸脸型数据集关于人脸脸型得数据集,并没专门公开的做好脸型标注的数据集。论文研究中常用的数据集有CAS-PEAL、JAFFE数据集,都需要手动进行标记。当然也可以爬取一下图片,借助现有的百度云平台,来对进行数据集进行标注,再进行人工评判筛选。
2.1 JAFFE数据集
网址:http://www.kasrl.org/jaffe.html
介绍:JAFFE是日本女性脸部表情数据集(Japanese Female Facial Expression),其中包括了10个日本女性的213幅表情图像,其中6个是基本表情,例如笑,惊讶,生气等,还有一个是中性表情(即自然状态下的表情),每幅图像的表情是选择了60人来评判。
大小:10位日本女性的213幅图像。
标签:高兴, 悲伤, 害怕, 生气, 惊讶, 厌恶, 中性
2.1 CAS-PEAL人脸数据集
网址:http://www.jdl.ac.cn/peal/
介绍:CAS-PEAL Face Database是由中科院和北京大学的先进人机通信技术联合实验室联合建立的数据集。建立该数据库的目的是为全世界范围的人脸识别研究提供大规模的中国人人脸数据去训练和提高算法。其中CAS-PEAL-R1是CAS-PEAL的一个子数据集。CAS-PEAL数据集需要申请才可以使用。
大小:
CAS-PEAL: 99594幅图像涉及1040个人(595位男性和445位女性)。
CAS-PEAL-R1: 30900幅图像涉及1040个人
标签:表情
2.3 CelebA数据集
网址:http://mmlab.ie.cuhk.edu.hk/projects/CelebA.html
介绍:celebA(CelebFaces Attributes Dataset)数据集是大规模的名人人脸属性数据库,有超过200k的名人图像,每幅图像有40个属性标注,包括是否是圆脸、有没有戴眼镜、有没有戴项链、性别等等。
大小:202,599幅脸部图像
标签:性别、是否属于圆脸、有无眼镜、有无项链、是否带帽子、有无胡须、浓妆淡妆等。
3 脸型分类方法
传统的方法是拟合人脸轮廓曲率来进行分类的,主要是利用脸部和下巴的曲线建立模型【1】。大部分提取面部特征使用的方法都是ASM和AAM,提取出特征之后的使用的分类算法不同,有以下几种:
3.1 SVM【2】
分类方法:
支持向量机SVM一般用来处理二分类问题,对于多个类别可以将多个二分类的SVM组合到一起生成一个多分类SVM,例如one-versus-one。One-versus-one multiclass SVM 是一种高效的分类方法,分类过程类似于投票过程。例如分三类A,B,C。那么将这三类两两组合形成二分类SVM,如SVM1(A,B),SVM2(A,C),SVM3(B,C),然后将三个二分类SVM使用到同一样本,统计样本被分为A,B,C类的个数,例如SVM1和SVM2分类结果都是A,SVM3分类结果是C,那么A的票最高,最终分类结果就是A。
分类过程:
1) 利用AAM方法建立模型提取特征;
2) 每个脸型选取一部分数据训练出一个3分类的SVM;
分类结果:
在论文中研究人员将脸型分为三类瓜子脸,圆脸和方形脸,然后选择取了513幅瓜子脸图像、538幅圆脸图像和434幅方形脸图像进行训练,最终使用180幅图像作为测试,测试结果瓜子脸识别率:90%,圆脸识别率:93.3%,方形脸识别率:85%。分类准确率不高的原因是研究中使用的数据集是JAFFE数据集,该数据是一个表情数据集,由于有些表情会造成面部变动很大影响分类,例如带有惊讶表情的面部会被识别为瓜子脸。
脸型类型
测试准确率
惊讶表情的面部会被错误分为瓜子脸
3.2 KNN方法【4】
分类特征:
利用图中红色圈出来的点可以计算面宽Wshape、下颌宽Wmandible、形态面高Hshape3个测量参数。面宽去左右颧点的欧氏距离,下颌宽取左右下颌角点欧氏距离,形态面高取鼻根点与颏下点间欧氏距离【3】【4】。
形态面指数:
颧下颌宽指数:
将以上这些参数作为脸型分类的特征进行分类。
分类过程:1、利用ASM获取形状特征点集;2、计算形态面指数和颧下颌宽指数,若形态面指数大于0.915归为长脸;3、归为长脸的样本若颧下颌宽大于0.875归为方圆下巴长脸,否则归为尖下巴长脸。面型指数小于0.915的样本,需要将形态面指数和颧下颌宽指数和样本库中的样本做比对,求取k个近邻得到脸型类别。
分类结果:
研究人员使用的是CAS-PEAL数据集,使用了其中1200张温和光照、中性表情的正面人脸,由20人投票将人脸库分为了三角脸、椭圆脸、圆脸、方脸、尖下巴长脸和方圆下巴长脸6类,分类精确率统计如下表:
由于脸型的分类实际上是一个比较简单的问题,输入正脸后就是一个简单的深度学习分类问题,
3.3 SVM-RBF方法【5】
分类特征:提取了脸部的61个特征点,采用下表对特征点处理得到19个表征脸型的特征参数,采用这19个特征进行训练和预测。
分类过程:1、利用AAM获取脸部特征点;2、根据上面的表格计算表征脸型的19个特征;3、利用SVM-RBF进行分类;论文中还是用了LDA(Linear Discriminant Analysis)和SVM-Linear方法,不过效果都没有SVM-RBF好。
分类结果:实验中数据是从Google搜索的1000张女性脸部图像,训练集和测试集按照9:1进行分配。SVM-RBF的分类结果最好,平均准确率可以达到72%;其次是SVM-Linear方法,平均准确率有64%;LDA方法最差,平均准确率只有58%。
3.2 最近邻法【6】
分类特征:用于脸型分类的几何特征,G1:整个脸部轮廓的最佳拟合椭圆;G2:下巴特征点的最佳拟合椭圆;G3:脸颊特征点的最佳拟合椭圆;G4:下巴的连线;G5:太阳穴连线;G6:对角线;
根据这6个特征,获取到一个表征脸型的8为特征向量F:(F1-F3)是(G1,G2,G3)的高度对G5长度归一化得到的,(F4-F6)是脸部轮廓到(G1,G2,G3)的距离对G5的长度归一化获得,F7是G4对G5归一化得到,F8是两个对象线长度的平均对G5归一化获得。
分类方法:最终分类根据两个脸型特征向量之间的距离确定,距离最近的即为同一类。
分类结果:论文中使用300幅图像作为训练,使用了100幅图像用来测试。出去由于脸部特征提取失败引起的错误,最终分类准确率在90%。
基于深度学习的方法已经大大简化了流程,准备好足够多的数据,这就是一个普通的分类任务。不得不感叹,深度学习让很多传统方法再也无路可走。
4 总结脸型分类可以应用在发型设计,眼镜框选择和美容行业,还可以用在虚拟化妆中,根据脸型确定哪里需要阴影等。总得来说根据正脸图像进行脸型分类准确率很高,但是对侧脸的图像,侧脸脸部特征比较少,无法正确判断脸部的比例,因此准确率比较低,如果采用的3D的信息侧脸分类效果应该会有所提升。
参考文献:
[1]魏伟. 基于主动形状模型人脸识别算法的研究与实现[D].复旦大学,2012.
[2]L. Li, J. So, H.-C. Shin, and Y. Han. “An AAM-based face shape classification method used for facial expression recognition,” International Journal of Research in Engineering and Technology, vol. 2, pp. 164–168, 2013.
[3]赵薇,汪增福.用于大库人脸识别的脸型分类研究[J].电子技术,2009,36(11):77-79+68.
[4]刘双成,蔡晓东,张力,毕伟伟,梁建勇.基于主动形状模型和K近邻算法的人脸脸型分类[J].桂林电子科技大学学报,2014,34(06):479-483.
[5]Wisuwat Sunhem, Kitsuchart Pasupa,"An Approach to Face Shape Classification for Hairstyle Recommendation", International Conference on Advanced Computational Intelligence, 8th
[6]Amir Zafar, Tiberiu Popa , "Face and Eye-ware Classification using Geometric Features for a Data-driven Eye-ware Recommendation System ",Proceedings of Graphics Interface 2016: Victoria, British Columbia, Canada, 1-3 June 2016, 183-188