fefare
is the piece of software that serves primarily educational purposes. It was designed and implemented in the course of the Individual Project for the 4th semester of Warsaw University of Technology.
The tool is designed to classify images of faces using the Eigenfaces method (see Used Resources).
The command python fefare -h
will produce:
usage: [-h] [--version] [--part PART] [-c TRAIN TEST | --gui]
optional arguments:
-h, --help show this help message and exit
--version, -ver, -v the version of the software
--part PART, -p PART the share of the Eigenfaces to be used, float 0.0 - 1.0
-c TRAIN TEST run via text-based CLI, requires paths to training and
testing sets
--gui, --GUI, -g run via GUI
Launch from the console example:
$ python fefare -c datasets/google_photos/training_set datasets/google_photos/testing_set/photoman1.jpg
Output:
7 images loaded from datasets/google_photos/training_set/photoman2
7 images loaded from datasets/google_photos/training_set/photoman1
7 images loaded from datasets/google_photos/training_set/photoman3
Result: photoman1
Note: TRAIN parameter points to the directory in which N (N = 3 in the example above) other directories is stored, where N is the number of distinct people ("classes"). The more photos of the same person each of them contains, the better is the performance. TEST parameter points to a new face image, not from the training set.
Note: In order to see the Eigenfaces, the code must be opened in a IDE (e.g. PyCharm) since MatPlotLib is used.