首页> 中国专利> 基于自适应标记分布的人类年龄估计方法

基于自适应标记分布的人类年龄估计方法

摘要

本发明公开了一种基于自适应标记分布的人类年龄估计方法,方法为通过自适应训练方法结合应用年龄标记分布模型算法,将得到的人脸图像特征向量和初始年龄标记分布作为输入,应用年龄标记分布模型算法最小化输入初始年龄标记分布与模型预测标记分布之间的KL散度,得到预测年龄标记分布,然后相同年龄的预测年龄标记分布用于学习其对应年龄的年龄标记分布,循环直至训练收敛或者达到设定最大次数,得出最终预测模型;待估计人脸图像特征输入到得出的最终预测模型中,输出预测年龄。该系统的年龄估计精度可以达到与人类类似的水平。

著录项

  • 公开/公告号CN103544486A

    专利类型发明专利

  • 公开/公告日2014-01-29

    原文格式PDF

  • 申请/专利权人 东南大学;

    申请/专利号CN201310531120.X

  • 发明设计人 耿新;王芹;

    申请日2013-10-31

  • 分类号

  • 代理机构南京瑞弘专利商标事务所(普通合伙);

  • 代理人杨晓玲

  • 地址 211189 江苏省南京市江宁区东南大学路2号

  • 入库时间 2024-02-19 21:57:24

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-02-15

    授权

    授权

  • 2014-03-12

    实质审查的生效 IPC(主分类):G06K9/00 申请日:20131031

    实质审查的生效

  • 2014-01-29

    公开

    公开

说明书

技术领域

本发明涉及利用计算机对人类年龄进行自动估计方法的领域。 

背景技术

基于人脸图像的自动年龄估计的应用日趋广泛,主要包括以下几个方面:(1)基于年龄的人机交互系统:在普通人机交互系统的基础上引入人类年龄自动估计算法,根据用户的年龄不同而采用不同的交互界面或交互方式;(2)基于年龄的访问控制系统:用来防止未成年人访问不适宜的网页或内容、在自动售货机上购买烟酒产品、进入酒吧等不适宜的场所等;(3)电子商务:根据图像等估计客户的大致年龄,对不同年龄段的客户采用不同的营销策略;(4)刑事侦查:根据视频监控等拍下的犯罪嫌疑人图像资料判断嫌疑人的大致年龄,缩小排查范围。 

利用计算机进行人脸年龄估计,即首先通过照相机或者摄像头获取人脸图像,由特征抽取算法提取人脸图像的特征,然后将其输入到一个训练好的年龄估计模型中,即可输出图像的估计年龄。 

人脸年龄估计的主要困难之一是现存的人脸数据库在许多年龄上缺少充足的训练数据(人脸图像),且目前的年龄估计算法又不能充分利用这些数据;另外,目前的算法不能在给出年龄预测的同时给出该预测的置信度,不利于进一步的决策。以往标记分布方法采用的为非自适应的标记分布,对所有类别的样本采用相同的标记分布,或者虽然对不同类别的样本采用不同的标记分布,但是每一类别的标记分布是固定不变的,由人为经验指定,不能实现根据训练样本自适应学习标记分布。非自适应标记分布的做法在很大程度上依赖于人的先验知识,即对高斯分布方差的经验选择。如果选择所有年龄对应相同的方差,即所有样本对应相同的高斯分布,则与人类年龄变化的事实不符合,因为人从婴儿时期到成年时期的面部变化较快、较大,而从成年到老年的变化相对较慢、较小,对应于高斯分布则应在低年龄段的方差比较小而在高年龄段的方差比较大;另一方面,如果选择不同年龄对应不同的方差,即不同年龄的样本对应不同的高斯分布,那么不同年龄对应的方差难以合理地设定,缺乏说服力与可信度。 

发明内容

发明目的:为了克服现有技术中存在的不足,本发明提供一种基于自适应标记分布的人类年龄自动估计方法,该方法的估计精度可以达到与人类类似的水平,具备说服力和可信度。 

技术方案:为实现上述目的,本发明的技术方案如下: 

基于自适应标记分布的人类年龄自动估计的方法,包括训练步骤和预测步骤,具体步骤如下: 

训练步骤: 

(1)获取现有数据库人脸图像,通过BIF特征抽取算法对人脸图像进行特征抽取得到高维度特征,将得到的高维度特征使用数据降维方法MFA进行降维,得出人脸图像特征向量; 

(2)对现有数据库中的每幅人脸图像,以其真实年龄为均值,以初始设定的方差为方差生成高斯分布,作为其对应的初始年龄标记分布; 

(3)将得到的人脸图像特征向量和初始年龄标记分布作为输入,应用年龄标记分布模型算法BFGS-LLD最小化输入初始年龄标记分布与模型预测标记分布之间的KL散度,得到预测年龄标记分布;所述BFGS-LLD最小化的目标函数为: 

L(θ)=ΣilogΣyexp(Σkθy,kgk(xi))-ΣiΣyPi(y)Σkθy,kgk(xi);

其中θ为模型参数,i为人脸图像数索引,y为年龄标记,k为特征维度,xi为第i个人脸图像实例;Pi(y)为关于xi的年龄标记分布,g(xi)为表示xi的特征向量,gk(xi)为该特征向量的第k个元素; 

(4)对步骤(3)生成的预测年龄标记分布按年龄分组,相同年龄的预测年龄标记分布用于学习该年龄的真实年龄标记分布,即以最小化二者之间KL散度为目标,学习每个年龄对应的真实年龄标记分布的方差,根据该方差为每幅图像生成其真实年龄对应的年龄标记分布,并将其作为下一次模型训练的初始年龄标记分布; 

(5)重复步骤(3)和步骤(4),直至收敛或者达到设定最大训练次数,得出最终年龄预测模型; 

预测步骤: 

(6)获取待估计的人脸图像,通过BIF特征抽取算法对人脸图像进行特征抽取,并将抽取的高维度特征使用数据降维方法进行降维,得出待估计人脸图像特征向量; 

(7)将获取到的待估计人脸图像特征向量输入到最终年龄预测模型中,得到一个与待估计图像对应的年龄标记分布的输出,把这个分布中取得最大描述度时对应的年龄作为本方法得到的估计年龄。 

更进一步的,步骤(3)中所述年龄标记分布模型算法BFGS-LLD为先从标记分布学 习方法LLD中抽象出优化目标函数,再利用优化算法BFGS进行求解。 

有益效果: 

(1)本发明应用年龄标记分布模型算法把人脸图像对应的年龄标记分布而不是单一的年龄作为输入的一部分,不仅能够有助于对其真实年龄的学习,而且对于真实年龄附近的年龄的学习也是有帮助的,可以有效缓解年龄估计问题中数据不充足的问题。 

(2)本发明除在初始时指定年龄标记高斯分布的统一方差外,此后则根据训练数据在训练过程中学习到的预测标记分布,对不同年龄分别拟合出具有最优方差的高斯分布,再将该高斯分布用于下一轮的训练。自动学习不同年龄的不同方差,即自适应学习年龄标记分布,比人为指定统一方差或手动设置不同年龄的不同方差更加合理科学,使年龄估计精度可以达到与人类类似的水平,具备说服力和可信度。 

(3)本发明的输出是一个关于年龄的标记分布,不仅可以给出预测的年龄值,还可以利用描述度给出该预测的置信度,方便进一步决策。 

(4)本发明利用优化算法BFGS,创新地将标记分布引入其目标函数中,得到BFGS-LLD算法。该算法在对数据库MORPH的实验中,与IIS-LLD算法相比,极大地提高了时间效率(约9倍),而且预测效果也有了显著的提高,在数据库MORPH上十倍交叉验证的平均绝对误差MAE较之IIS-LLD算法的5.67岁降为4.31岁。 

附图说明

附图1自适应标记分布的人类年龄自动估计方法流程图。 

附图2为本发明年龄估计的一个输出例子图。 

具体实施方式

下面结合附图1、2对本发明作更进一步的说明。 

本发明利用优化算法BFGS,创新地将标记分布引入其目标函数中,得到BFGS-LLD算法,依靠该算法从训练数据中学习预测标记分布,并自适应真实年龄标记分布,达到了理想的预测效果。 

标记分布将样本的单标记扩展到一个标记分布,对多类的学习有很大的帮助,尤其解决了类间相互关联和某些类训练数据不足的问题。相近年龄上的人的脸部特征是非常相似的,这是因为人脸的成长是一个缓慢且平稳的过程,因此,可以利用某个年龄的相近年龄的人脸图像帮助该年龄的模型的学习,将现有技术中采用的一幅图像对应一个年龄的方法,改为一幅图像对应一个关于年龄的标记分布的方法。 

一幅真实年龄为α的人脸图像,其适当的年龄标记分布需满足以下两个条件:1)在标记分布中,年龄α对应的描述度是最大的;2)其他年龄对应的描述度的大小随着 与α距离的增加而降低,使得与实际年龄越接近的年龄对标记分布的贡献越大。本发明选用符合条件的高斯分布作为真实年龄标记分布的近似替代。 

不同年龄段人脸变化的快慢不同,从婴儿时期到成年时期的面部变化较快较大,而从成年到老年的变化相对较慢较小,对应于高斯分布则在低年龄段的方差应比较小以对应面部的较快变化,而在高年龄段的方差应比较大以对应面部的较慢变化。 

本发明中提出的自适应标记分布,初始化时,对每一幅人脸图像对应相同方差的高斯分布,但这并不是假设所有年龄对应的高斯分布的方差都相同,因为本发明将每次模型学习得到的预测标记分布按年龄分组,相同年龄的预测标记分布用于学习其对应年龄的年龄标记分布(高斯分布)的方差。对每个年龄,以最小化其对应人脸图像的预测分布与高斯分布之间的KL散度之和为目标,学习每个年龄对应的真实年龄标记分布(优化后的高斯分布)的方差,并将优化方差后的真实年龄标记分布(优化后的高斯分布)作为下一次模型训练的初始年龄标记分布。自适应标记分布的应用,实现了方差的自适应学习,由依靠经验指定方差转化为依靠算法从训练数据中自动学习得出最优方差,从而得到自适应的标记分布,使得预测模型更加科学合理、有可信度。 

年龄分布模型算法是从Geng等人2010年在国际会议AAAI’10上发表的论文“Facial Age Estimation by Learning from Label Distribution”中提出的标记分布学习LLD(Learning from Label distributions)方法中抽象出需要最小化的目标函数,并求解目标函数的梯度,然后利用BFGS优化算法。该算法由Broyden,Fletcher,Goldfarb,Shanno于1970年同时提出,因而命名为BFGS算法,可参见Shanno的论文Conditioning of quasi-Newton methods for function minimization)进行求解。 

上述即为年龄分布模型算法BFGS-LLD,使得运算系统的运行速度大幅提高。 

设X=Rd为输入空间,Y={y1,y2,...,yc}为有限类标记集合; 

给定人脸图像训练集S={(x1,P1(y)),(x2,P2(y)),...,(xn,Pn(y))},其中xi∈X为一个样本实例,Pi(y)是与样本xi相关的随机变量y∈Y的分布。本发明的目标是学习一个条件概率分布函数p(y|x),其中x∈X,y∈Y,设p(y|x)是一个参数模型,则可表示p(y|x;θ),其中θ为模型参数。 

LLD的目标是对给定的样本实例xi找到合适的θ,使对应的分布p(y|x;θ)与Pi(y)相似,选用KL散度作为两个分布相似性度量的标准。 

因此,BFGS-LLD需要最小化的目标函数为: 

L(θ)=ΣiΣy(Pi(y)logPi(y)p(y|xi;θ))---(1)

可进一步化简为最小化目标函数: 

L(θ)=-ΣiΣy(Pi(y)logp(y|xi;θ))---(2)

设fk(x,y)是依赖于样本实例x与其标记y的特征函数,k为特征维度。p(y|x;θ)的合理选择是有最大条件熵的最大熵模型,形式为: 

p(y|x;θ)=1Zexp(Σkθkfk(x,y))---(3)

其中,Z=Σexp(Σθkfk(x,y))是归一化因子,θk为模型参数。 

在实际应用中,特征通常仅依赖于实例而不依赖于类标记,因此(3)式可重写为: 

p(y|x;θ)=1Zexp(Σkθy,kgk(x))---(4)

其中gk(x)为与类别无关的特征函数。 

将(4)代入目标函数(2),利用ΣPi(y)=1,得: 

L(θ)ΣilogΣyexp(Σkθy,kgk(xi))-ΣiΣyPi(y)Σkθy,kgk(xi)---(5)

进而,BFGS-LLD的目标函数L(θ)关于θy,k的导数为: 

Lθy,k=Σigk(xi)(exp(Σkθy,kgk(xi)Σyexp(Σkθy,kgk(xi)-Pi(y))---(6)

基于自适应标记分布的人类年龄自动估计的方法,包括训练步骤和预测步骤,参见附图1。 

下面结合具体实例介绍该方法具体是如何实现: 

在MORPH数据库(约55000张人脸图像)上实现本发明基于自适应标记分布的人类年龄估计方法。采用十折交叉验证方法,将全部特征数据随机分成大致均等的十折,且保证每个人的人脸图像特征在同一折中。每次取一折作为测试集(即待估计人脸图像集),其余九折作为训练集,共训练十次,取平均结果作为本发明方法性能的评价标准。在每一折验证中,具体步骤为: 

训练步骤: 

(1)在训练集中获取人脸图像。MORPH数据库使用BIF(基于仿生特征,Guo等人在CVPR’09上发表的文章“Human age estimation using bio-inspired features”提出)算法进行特征抽取,每张图像的特征维度为4376,在抽取完特征后,利用MFA(Yan等人在PAMI’07发表的“Graph Embedding and Extensions:A General Framework for Dimensionality Reduction”)算法对训练集数据降维,去除冗余和噪声等,得出维度为200的人脸图像特征。 

(2)初始化模型参数和训练集的初始年龄标记分布。不失一般性,将模型参数初始化为0;对所有训练集人脸图像,以其真实年龄为均值,以初始设定的方差为方差生成高斯分布,作为其对应的初始年龄标记分布(其中方差优选范围为:2-6,这里设定方差为3)。 

(3)将得到的训练集的人脸图像特征向量和年龄标记高斯分布作为输入,应用年龄标记分布模型算法BFGS-LLD最小化输入标记分布与模型预测标记分布之间的KL散度,得到预测年龄标记分布;所述BFGS-LLD最小化的目标函数为: 

L(θ)=ΣilogΣyexp(Σkθy,kgk(xi))-ΣiΣyPi(y)Σkθy,kgk(xi);

其中θ为模型参数,i为人脸图像数索引,y为年龄标记,k为特征维度,xi为第i个人脸图像实例;Pi(y)为关于xi的年龄标记分布,g(xi)为表示xi的特征向量,gk(xi)为该特征向量的第k个元素; 

(4)自适应标记分布,即对步骤(3)生成的预测年龄标记分布按年龄分组,相同年龄的预测年龄标记分布用于学习该年龄的真实年龄标记分布,即以最小化二者之间KL散度为目标,学习每个年龄对应的真实年龄标记分布的方差,根据该方差可以为每幅图像生成其真实年龄对应的年龄标记分布,并将其作为下一次模型训练的初始年龄标记分布; 

(5)重复步骤(3)和(4),直至收敛,得出利用训练集学习到的最终预测年龄标记分布模型; 

预测步骤: 

(6)获取测试集待估计的人脸图像,通过BIF对人脸图像进行特征抽取,并利用对训练集降维时的转换矩阵对测试集进行降维,得到测试集人脸图像特征向量; 

(7)将测试集待估计人脸图像特征向量输入到最终预测年龄标记分布模型中,得到与测试集人脸图像对应的预测年龄标记分布的输出,把分布中取得最大描述度时对应的年龄作为对测试集人脸图像的估计年龄。附图2为输出的一个例子,可以看出模型对该待估计人脸图像的预测分布。 

附表1为采用BFGS-LLD算法和IIS-LLD算法的对比结果 

附表1中,MAE为平均绝对误差(MeanAbsoluteError),其值为BFGS-LLD和IIS-LLD(由Geng等人2010年在AAAI’10发表的论文“Facial Age Estimation by Learning from Label Distributions”中提出)两算法在MORPH数据库上十倍交叉验证的结果,同时给出了标准差;Time为运行时间,其值为BFGS-LLD和IIS-LLD两算法在MORPH数据库上十倍交叉验证的总运行时间。可以看出,本发明不仅在年龄估计上取得了很好的效果:平均绝对误差(MAE)较之IIS-LLD算法的5.67岁降低为4.31岁,而且在运行时间上较之IIS-LLD算法也提高了约9倍。本发明预测效果的大幅改进得益于自适应标记分布的应用,估计精度可以达到与人类类似的水平,具备说服力和可信度。运行时间的大幅改进得益于创新地将LLD引入BFGS优化算法的目标函数中,即BFGS-LLD算法的应用。 

以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。 

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号