基于CNN实现对摄像头捕捉的人脸进行性别和年龄的预测
向AI转型的程序员都关注了这个号👇👇👇
机器学习AI算法工程 公众号:datayx
实现思路
数据处理
原始数据来源于 https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/static/wiki_crop.tar
原始数据集包含的图片数量很多,我从中筛选了大约10000张图片(筛选条件为:由OpenCV识别出的face数目为1、性别已知、男女各约5000张)
图片尺寸统一为 100x100,文件名格式统一为
编号-年龄-性别.png
,其中性别1代表男性,0代表女性从10000张图片中抽取约1000张(男女比例相当)作为测试集,其余作为训练集
模型结构
性别预测分支和年龄预测分支共用ResNet50主干,年龄预测分支和性别预测分支各包含三层卷积层
性别预测分支使用交叉熵损失函数
年龄预测分支使用均方差损失函数
全部代码 获取方式:
关注微信公众号 datayx 然后回复 人脸 即可获取。
如何使用
将data.zip解压到data目录下(data.zip更新为RGB图像,体积较大),训练集所在路径应为
./data/trainset/
,测试集所在路径应为./data/testset/
安装所需的第三方库
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
修改两处路径,将其指向OpenCV环境中对应的xml文件。分别是
run.py
第46行 和data/process_wiki_data.py
第12行使用GPU训练模型
./scripts/run_gpu.ps1
用视频测试模型
python .\run.py --pretrain_weight_path .\middle\models\test-best.pth --mode video
训练过程的记录
这是对一张组合图像的处理结果(组合的四张图片选自imdb-wiki数据集的原始图像)
机器学习算法AI大数据技术
搜索公众号添加: datanlp
长按图片,识别二维码
阅读过本文的人还看了以下文章:
基于40万表格数据集TableBank,用MaskRCNN做表格检测
《深度学习入门:基于Python的理论与实现》高清中文PDF+源码
2019最新《PyTorch自然语言处理》英、中文版PDF+源码
《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码
PyTorch深度学习快速实战入门《pytorch-handbook》
【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》
李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材
【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
如何利用全新的决策树集成级联结构gcForest做特征工程并打分?
Machine Learning Yearning 中文翻译稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程
不断更新资源
深度学习、机器学习、数据分析、python
搜索公众号添加: datayx