seetaface开源人脸检测框架实现人脸检测,OpenCV+dnn模块实现性别分类,qt做显示界面,完成一个课程设计。
依赖库:opencv3.1+ 包含dnn模块,QT5
1.性别分类网络训练
1.3.网络结构定义
网络结构参考Age and Gender Classification using Convolutional Neural Networks论文,是CVPR2015年的文章,用卷积神经网络对年龄和性别做识别,我们只用其网络模型对性别做分类。网络结构如下图
其实是一个比较常规的网络框架,论文中的性别识别准确率在86%左右,感觉性别识别这个任务还是比较难的,当然,作者的数据集也属于实际场景,有很多模糊,畸变,遮挡等干扰,导致准确率不高。这篇论文应该是比较早的將CNN用于年龄的性别识别任务,并且取得了优于以前方法的效果。传统方法是使用人工特征,lbp,gabor等等,再用svm分类器。
caffe网络定义文件
train_val.prototxt,这个可以在网络上找到作者开源的文件,或者自己根据网络写也行。3卷积层,relu作为激活函数,再加上dropout,softmax损失函数。
caffe sovler.prototxt
这个是caffe训练的配置文件,下面进行分析
net: “examples/amyfile/gender/train_val.prototxt”
test_iter: 10
test_interval: 100
base_lr: 0.001
lr_policy: “step”
gamma: