Using Caffe and python to reproduce the results of MTCNN on FDDB dataset.
- The implementation of MTCNN using python & caffe, thank the author DuinoDu/mtcnn.
- (alternatively) We can convert the ellipse annotations into the rectangle annotations for better visualization. Thank the author ankanbansal/fddb-for-yolo.
We can use the convertEllipseToRectangle.py to convert the FDDB-folds/FDDB-fold-01-ellipseList.txt into FDDB-folds/FDDB-fold-01-rectList.txt and show the converted bounding boxes on the images.
We can use the demo.py to run mtcnn framwork on general images. This file comes from DuinoDu/mtcnn/demo.py.
We can use the runFDDB.py to run mtcnn framwork on FDDB dataset.
Download the official evaluation code and use the commond 'make' in the evaluation folder. To evaluate the results/preditions of your framework, just use the following codes.
./evaluate -a ../data/FDDB-folds/ellipseList.txt -d ../data/FDDB-folds/predict.txt -l ../data/FDDB-folds/foldList.txt -f 0
Then tempContROC.txt and tempDiscROC.txt will be generated in the /data/FDDB-folds/.
- Install the toolbox Gnuplot.
- Using the following commond.
gnuplot contROC.p
gnuplot discROC.p
We will get the tempContROC-MTCNN.png(tempDiscROC-MTCNN.png) and the ROC curves like this:
@article{7553523,
author={K. Zhang and Z. Zhang and Z. Li and Y. Qiao},
journal={IEEE Signal Processing Letters},
title={Joint Face Detection and Alignment Using Multitask Cascaded Convolutional Networks},
year={2016},
volume={23},
number={10},
pages={1499-1503},
keywords={Benchmark testing;Computer architecture;Convolution;Detectors;Face;Face detection;Training;Cascaded convolutional neural network (CNN);face alignment;face detection},
doi={10.1109/LSP.2016.2603342},
ISSN={1070-9908},
month={Oct}
}