ITPub博客

【蜂口 | AI人工智能】人脸年龄——龙鹏 深度学习与人脸图像应用连载(六)

原创 人工智能 作者:絵飛的魚 时间:2018-10-10 18:03:20 0 删除 编辑

【文章首发于蜂口知道公众号,内容来源于蜂口小程序,欢迎关注了解~】

hi,大家好,我是龙鹏。分享继续!

这次接着假期前继续给大家分享人脸图像相关的应用。本次的分享是人脸年龄这个问题。

本次的分享将包含三个方面的内容。

首先,对人脸年龄这个问题做一个通用的介绍。人脸年龄实际上不仅仅是一个数值估计的问题,还包括它的表观年龄与真实年龄以及人脸年龄的年龄段的估计的问题;

其次,对人脸年龄的研究方法做一个详细的介绍。主要包括如何去建模一个人脸的年龄,然后人脸年龄研究方法,包括传统方法与深度学习方法,各自是基于什么样的一个思路去解决这个问题。

最后,对人脸年龄的应用和它的难点做一个总结。

这是我们整体的一个分享思路。我们的分享会按照这个展开。

一、 人脸年龄。所谓人脸年龄的估计,它实际上包含了很多种含义:

1)人脸年龄的估计问题,它可以分为表观年龄的估计与真实年龄的估计问题。

真实年龄就是我们看到的人脸的图像,它的真实年龄是多少?而表观年龄,就是我们看到一个人脸图像,它表现出来的年龄是多少?这两者之间是有很大的区别的。

因为人脸年龄跟很多的因素有关系,跟他的生活环境、其他保养的状况有关。有些女明星她可能年纪非常大,五六十岁,但是她保养起来,跟一些普通的人没有保养的二三十岁一样的年轻,表现出来的人脸图像的特征是完全一样的。由于存在这些因素,所以实际上我们平时所说的人脸年龄的估计问题其实说的是表观年龄的估计问题。因为真实的年龄,实际上有时候我们人类专家都无法真实的判断。

2)人脸年龄的估计,它还可以分为一个具体年龄的估计和年龄段的估计。

因为年龄的估计,它不是一个非常好量化的问题。29岁跟30岁实际上在图像上很难完全区分开来。所以有的研究是一个具体年龄段的估计问题。

比如说11岁到15岁、20岁到30岁这样一个年龄段;有的也是需要估计出一个具体的年龄的问题,那么估计一个具体的年龄问题,它的误差一定会比估计年龄段的问题误差大。

这里所展示的就是一个具体年龄的估计问题,如下图:

我们看到赵丽颖估计出来的年龄是23,但实际上她本身的年龄已经快接近30岁。展示的是一个具体年龄的估计,也是一个表观年龄的估计。

我们再看下面这张图:

它展示出来是一个年龄段的估计问题,也就是说对于这样一张输入图片,我们并不估计它的具体的年龄,而是估计它究竟落在哪一个年龄段。

这就是人脸年龄的估计问题。人脸年龄,现在估计问题都有哪些研究方法,

我们首先讲述一下关于人脸年龄相关的模型。人脸年龄包含了三个模型:

a) 分类模型 。也就是说我们可以把这个人脸的年龄的估计当做是一个分类的问题。那么分类的问题它也可以分为两类:单个年龄的分类和一个年龄段的分类。

首先,单个年龄的分类。因为我们平常的人的年龄数据的标注只会是一个整数一岁两岁三岁十岁这样的一个数字的标注,所以我们可以把它当做一个连续数列的一个分类问题。比如说从零岁到一百岁,那么这就是一个101类的分类问题。

其次,根据我们标注的年龄段,我们也可以把它当做一个年龄段的分类问题,比如0到5岁是一类,6到10岁是一类。

分类问题是最简单的一个模型。

b) 回归模型 。因为人脸的年龄是一个持续增长有序数列。虽然我们平常标注的数据不会出现1.5岁、2.5岁这样一个分数的年龄,但实际上人是存在2.5岁、1.5岁这样的年龄的。所以人的年龄天然就是一个回归的模型。

回归模型相对于分类模型来说,更加符合问题的定义,也会更加难一些,因为人脸回归模型就没有年龄段这样的一个问题了。

c) 排序模型 。排序模型就是当我们在估计一个人脸年龄的时候,我们不是直接用一个模型去回归一个数字,或者说把它分到某一个类,而是将这个图像与一个基准的年龄段去进行比较。通过与很多年龄段的比较,我们去估计一个比较合适的年龄。

为什么需要这么做?因为我们人天生就是很难判断一个人的真实的年龄是多少,但是当我们给出一个基准的年龄的时候,我们会更加方便、更加容易判断这个人的年龄是大于这个基准年龄还是小于这个基准年龄。

所以基于排序的模型,它实际上更符合人类平时判断年龄的一个思维。

这就是人脸年龄的三个模型。这三个模型在学术界都有比较详细的研究。

二、基于这些模型,我们从传统方法和深度学习方法两方面来给大家做一个介绍:

传统的特征主要包含这几类特征:人体测量学模型、柔性模型、表观模型。

人体测量学模型特征主要用的就是人体的轮廓;

柔性模型与人体测量学模型有相通之处,它可以看作是人体测量学模型的一个升级版。所谓柔性模型是基于人脸的轮廓的,它可以不断地发生变形,柔性模型采用ASM模型来进行表征。因为人的脸型在随着年纪的增长也会发生一定的变化,所以柔性模型可以得到应用;

表观模型,它的核心就是纹理特征。因为人的脸上的纹理在随着年龄增长过程中会发生比较大的变化。

传统的方法就是通过这三类传统的特征,来进行人脸的表征。但是又由于人脸年龄是一个比较复杂的问题,所以基于传统的方法并不能比较好地解决人脸年龄的估计。

随着深度学习的发展和大数据的发展,目前基本上所有的研究人脸年龄的方法都已经采用了深度学习,

深度学习的思路,如下图:

这是一个典型的分类问题的深度学习的思路。它首先输入一张图,然后利用人脸检测算法,检测到一个比较合适的角度,进行校正之后,我们把它送入深度学习模型,进行特征的学习, 到最后经过全连接层 就得到了它的一个表征向量。

这里展示的是利用分类的算法来进行人脸年龄的研究。由于标签是0到100岁,所以这是一个101类的分类问题。

基于深度学习的方法,总体来说就是通过大数据来进行特征的隐式的表达。

三、人脸年龄的估计可以有哪些应用?

首先,它可以用于安全控制。因为在很多的时候,比如说像共享单车这样的一个场景的话,假如我们可以利用扫脸识别年龄,我们就可以控制多少岁以下的人不能进行共享单车的骑行。

其次,可以用于人脸检索与识别。有了人脸年龄估计之后,我们可以利用年龄进行快速的人脸检索与识别。

人脸年龄研究也面临一些难点,这些难点主要包含两个方面:

第一个方面是 比较复杂的模式 ,因为人脸的年龄随着遗传生活环境以及人的保养情况会存在很大的差异。就是同一年龄段的人,他们表现出来的图像特征也可能有着很大的差异性。

第二个方面是 干扰多 。目前由于美颜等算法以及大家平时尤其是女性比较喜欢化妆,它会对人脸年龄的估计造成比较重大的干扰。

总的来说,我们平时所估计出来的年龄都是指的是表观年龄,也就是说图像展示出来的。在通常意义上的那样一张图像,它应该是对应什么样一个年龄阶段。

这就是本次人脸年龄的分享内容。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31553577/viewspace-2215913/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-09-06

  • 博文量
    19
  • 访问量
    6839