目录
一、论文阅读和github资源汇总
1.1 论文
1.1.1 2012.人脸图像的年龄估计研究
1.1.2 2013.Age Estimation Face Images_Human vs Machine Performance
1.1.3 2015.Age and Gender Classification Using Convolutional Neural Networks.CVPR
1.1.4 2015.DEX- Deep EXpectation of apparent age from a single image
1.1.5 2017.Easy Real time gender age prediction from webcam video with keras
1.1.6 2017.Deep Convolutional Neural Network for Age Estimation based on VGG-Face Model
1.1.7 2017.Age Progression/Regression by Conditional Adversarial Autoencoder
1.1.8 2018.SSR-Net- A Compact Soft Stagewise Regression Network for Age Estimation
1.2 github资源
1.3 更多公司产品
二、数据库/评价/挑战
1、年龄检测数据库:
2、年龄估计性能评价:
3、挑战
三、公司场景思考
特征提取+传统机器学习
(1)特征提取
a.人体测量学模型:人脸整体轮廓变化的数学规律
主要适合对未成年人进行年龄分类,对人体姿态变换敏感,因此适用于提取正面人脸年龄特征
b.柔性模型:人脸形状+全局灰度/纹理结合
c.特征子空间模型AGES:衰老个性化:一个人完整年龄段照片、不完整年龄段照片
d.流行学习:适用大型数据库,并且每个年龄段的数据均匀
e.外观模型
(2)传统机器学习
SVR,Bayes,SVM等。
4个步骤:预处理、人脸部位定位,特征提取,分层年龄估计
(1)预处理
(2)人脸部位定位
(3)特征提取:BIF
(4)分层年龄估计:SVM
年龄:8个年龄段,也就是8分类问题;
性别:二分类
网络结构:3个卷积层+2个全联接层,参考:Alexnet
csdn文章:https://blog.csdn.net/qq_30214939/article/details/70196548
github:caffe:https://github.com/eveningglow/age-and-gender-classification
同:2016.Deep expectation of real and apparent age from a single image without facial landmarks
步骤:(1)opencv进行人脸定位
(2)人脸剪裁
(3)特征提取
输入模型的图像:数据库中的图片进行人脸定位和人脸剪裁后的归一化大小的脸部图片
(4)年龄估计:
年龄:0-100,softmax0-1共101个概率,每个概率和对应的年龄值相乘,再相加,最后的和作为估计年龄值
(5)性别估计
性别:0-1,二分类
模型:基于VGG16
https://blog.csdn.net/hanjiangxue_wei/article/details/79718833
https://blog.csdn.net/u011961856/article/details/78984696
https://blog.csdn.net/qq_14845119/article/details/79460315
github:https://github.com/kongsicong/Age_recognition_OR
自定义损失函数,因此没办法移植到ncnn
跟1.1.4类似,只是将模型换成:2017WideResNet: Residual Network的矮胖版:https://arxiv.org/abs/1605.07146
使用2015年的论文:Deep face recognition 中的VGG-face模型
2015的论文:11层:8个卷积层+3个全连接层
本论文修改:12层:保留8个卷积层+将原来的全连接层换成新的4个全连接层
条件对抗性自编码器
SSRnet论文:https://www.citi.sinica.edu.tw/papers/pchsiu/6302-F.pdf
目前找到的最优年龄检测论文,模型大小:0.32M
人脸检测:dlib+人脸拉齐;后来用mtcnn
mtcnn:https://blog.csdn.net/qq_41044525/article/details/80820255
性别:opencv人脸检测,vgg16改进版进行gender检测
github:https://github.com/jocialiang/gender_classifier
性别和种族:dlib人脸检测,facenet进行gender检测
github:https://github.com/wondonghyeon/face-classification
facenet:https://arxiv.org/pdf/1503.03832.pdf
性别识别:xception
github:https://github.com/vipstone/faceai
年龄和性别:基于2015CVPR和2016DEX,inception-resnet-v1
github:https://github.com/BoyuanJiang/Age-Gender-Estimate-TF
年龄和性别:WideResNet,在2015+2016论文基础上的改进
github:https://github.com/yu4u/age-gender-estimation
年龄:SSR-Net
github:https://github.com/shamangary/SSR-Net
年龄和性别:ResNet50、Inceptionv3、Mobilenetv2、SSRnet(2018最新)对比
github:https://github.com/dandynaufaldi/Agendernet
亚洲人优化:SSR-Net针对亚洲人的优化
github:https://github.com/b02901145/SSR-Net_megaage-asian
mxnet版本:SSRNet,并且经过亚洲人优化
github:https://github.com/dandynaufaldi/Agendernet
(1)商汤
(2)face++
(3)虹软:全年龄估计
(1)FG-NET数据库:82个人的1002幅,0-69岁 偏向儿童,50%在0-13岁
http://yanweifu.github.io/FG_NET_data/FGNET.zip
(2)YGA数据库:1600个人的8000幅,0-93岁,800个男-800个女
(3)IFDB数据库:621个人的3600幅,1-85岁
(4)MORPH数据库:相册一:515个人的1724幅,0-68岁,130个男-294个女
相册二:4000多人的70000幅+,15-77岁
(5)HOIP数据库:300个人的306600幅,150个男0150个女
(6)IAD数据库:从Internet上获取的175000幅,0-80岁 未公开
(7)OAPFD数据库:865个人的865幅,23-60岁,全是男。清华大学数据库。
(8)LHI亚洲人脸库:50000幅,20-80岁
(9)PCSO数据集:10036幅,17-68岁
(10)Audience benchmark:26580幅,年龄和性别标签,8个年龄组/0-2,4-6,8-13,15-20,25-32,38-43,48-53,60+
https://talhassner.github.io/home/projects/Adience/Adience-data.html#agegender
下载:
(11)IMDB+WIKI数据集:
https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/
来源于2015的文章:
数据集年龄分布说明:http://dataju.cn/Dataju/web/datasetInstanceDetail/108
(12)UTKFace:
https://susanqq.github.io/UTKFace/
(13)亚洲人脸数据库MegaAge:http://mmlab.ie.cuhk.edu.hk/projects/MegaAge/
(14)人人网亚洲数据库:Asian Face Age Dataset (AFAD)
包含了164432 的人脸图片,并且带有准确的年龄标签。其中,100752 为男性,63680为女性,年龄范围为15-40。
http://afad-dataset.github.io/
(1)平均绝对误差 MAE
(2)累积指数CS
(3)估计精度
年龄估计是多学科:认知科学,计算机科学,心理学,生理学等
衰老模型个性化:各个年龄层次,各个人的衰老模式都不一样
还有个很有意思的点:基于多模态的年龄识别
可以通过增加语音特征、行为特征等动态信息,帮助更好的识别年龄
1、了解模型c调用和tensorflow到caffe转换
模型转换,c调用:有工具
2、人脸检测:一般用mtcnn比较多,但是要列出最近的模型
测试图片
3、年龄、性别检测:
测试图片:儿童的直接从app获取吗?
以上论文和资源中的模型汇总:alexnet、vgg、resnet50、wideresnet、inceptionv3、mobilenetv2(2018.1)、ssrnet(2018)
SSRNet与MobileNetV2对比:模型都很小,SSRNet更小;
运算速度都很快,MobileNetV2稍快一点
识别的精度:不同数据集,两个数据集都可能更优,因此要看具体数据集场景。
从精度、模型大小、运算速度综合考虑:打算使用MobileNetV2,SSRNet两种进行对比。