Implementation of this paper in Python - OpenCv
- This implementaion is not complete yet.
- Main file name is fqa_score.py and you can go to the fqa directory to access codes.
- You should download this file and extract it in
fqa
directory
This script will train a stacked auto encoders on 4 kind of features:
- GIST (I don't know it's abbreviation)
- CNN (Transfer Learning)
- HOG (Histogram of graident)
- LBP(local binary pattern)
You should install gist from here based on your OS full instruction are availble in link
It uses lfw Dataset for average quality pics, FERRET dataset for good pictures and False positive faces from face detection programs (like retina) labeled as bad pics.
We have 3 classes of pics. good, average and bad pictures are available in 'pics' directory. we extact every feature for thease and use feature reduction (auto encoders) to downsize it to a vector of 50 elemnts. then concate all of the vectores ( 4 * 50 =200) and use feature reduction and auto encoders and a softmax layer for classifying images.
Original | Cropped | Local Binary pattern | Histogeram of Oriented Gradients |
---|---|---|---|
Our bottle neck is feature calculation. we should use a trained auto encoder for feature reduction (after we tuned it).
Need to make 'pics' folder if it's not available
- Fine tune the auto encoders
- Concatinate (late fusion) vectors
- Train an auto encoder (with softmax) for classification
- try V up architectures for auto encoding
- gather more data for pics ( we already have about 1000 pics per class, but with FERRET data set that is a 'good' labled, we can extend our data set)
Seyed Mohammad Amin Taheri at http://Shenasa-ai.ir during internship for any questions, don't hesitate to open and issue or contact me on: amintaheri90@gmail.com