Implement Face detection, and Age and Gender Classification using Keras.
(image from wider face dataset)Face Detection
Age and Gender Classification
Keras2 (Tensorflow backend)
OpenCV
Python 2.7
Darknet (for Training)
Perl (for Training)
python download_model.py
Here is a run using pretrained model .
python agegender_demo.py
pip install keras
Download Darknet and put in the same folder.
https://github.com/pjreddie/darknet
Download fddb dataset (FDDB-folds and originalPics folder) and put in the dataset/fddb folder.
http://vis-www.cs.umass.edu/fddb/
Create datase/fddb/FDDB-folds/annotations_darknet folder for darknet.
perl annotation_fddb_darknet.pl
Preview converted annotations.
python annotation_view.py fddb
Here is a training using YoloV2.
cd darknet
./darknet detector train data/face-one-class.data cfg/yolov2-tiny-train-one-class.cfg
Here is a test.
./darknet detector demo data/face-one-class.data cfg/yolov2-tiny-train-one-class.cfg backup-face/yolov2-tiny-train-one-class_32600.weights -c 0
http://www.abars.biz/keras/yolov2-tiny-one-class.cfg
http://www.abars.biz/keras/yolov2-tiny-train-one-class_32600.weights
Download YAD2K
https://github.com/allanzelener/YAD2K
This is a convert script.
python3 yad2k.py yolov2-tiny-train-one-class.cfg yolov2-tiny-train-one-class_32600.weights yolov2_tiny-face.h5
This is a converted model.
http://www.abars.biz/keras/yolov2_tiny-face.h5
Download AdienceBenchmarkOfUnfilteredFacesForGenderAndAgeClassification dataset (agegender folder) and put in the dataset/agegender folder.
https://www.openu.ac.il/home/hassner/Adience/data.html#agegender
Create dataset/agegender/annotations for keras.
perl annotation_agegender_keras.pl
Download IMDB-WIKI dataset (Download faces only 7gb) and put in the dataset/imdb_crop folder.
https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/
Create dataset/agegender/annotations for keras.
python annotation_imdb_keras.py
Note : The age labels in the IMDB-WIKI dataset are noisy.
Download UTKFace dataset and put in the dataset/imdb_crop folder.
https://susanqq.github.io/UTKFace/
Create dataset/agegender/annotations for keras.
python annotation_utkface_keras.py
Install keras-squeezenet
https://github.com/rcmalli/keras-squeezenet
Run classifier task using keras.
python agegender_train.py age101 squeezenet
python agegender_train.py gender squeezenet
Test classifier task using keras.
python agegender_predict.py age101 squeezenet
python agegender_predict.py gender squeezenet
Age101 (IMDB)
http://www.abars.biz/keras/agegender_age101_squeezenet.hdf5
Gender (IMDB)
http://www.abars.biz/keras/agegender_gender_squeezenet.hdf5
https://github.com/dannyblueliu/YOLO-Face-detection