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)
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 dataset/fddb/FDDB-folds/annotations_darknet folder for darknet.
python annotation_fddb_darknet.py
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.
https://github.com/abars/YoloKerasFaceDetection/releases/download/1.10/yolov2_tiny-face.h5
Download AdienceBenchmarkOfUnfilteredFacesForGenderAndAgeClassification dataset and put in the dataset/adience folder.
https://www.openu.ac.il/home/hassner/Adience/data.html#agegender
Create dataset/agegender_adience/annotations for keras.
python annotation_agegender_adience_keras.py
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_imdb/annotations for keras.
python annotation_imdb_keras.py
Download UTKFace dataset and put in the dataset/imdb_crop folder.
https://susanqq.github.io/UTKFace/
Create dataset/agegender_utk/annotations for keras.
python annotation_utkface_keras.py
Download AppaReal dataset and put in the dataset/appa-real-release folder.
http://chalearnlap.cvc.uab.es/dataset/26/description/
Create dataset/agegender_appareal/annotations for keras.
python annotation_appareal_keras.py
Install keras-squeezenet
https://github.com/rcmalli/keras-squeezenet
Run classifier task using keras.
python agegender_train.py age101 squeezenet imdb
python agegender_train.py gender squeezenet imdb
Test classifier task using keras.
python agegender_predict.py age101 squeezenet imdb
python agegender_predict.py gender squeezenet imdb
Age101 (IMDB) (EPOCHS=100)
Gender (IMDB) (EPOCHS=25)
https://github.com/dannyblueliu/YOLO-Face-detection