Applied Machine Learning Systems ELEC0132 Assignment
Maryam Habibollahi (SN: 15000241)
- Detection and removal of noisy images
- Training, validation and testing subsets division
- Train ML models to perform
- Binary
- Emotion recognition (smile/!smile)
- Age identification (young/old)
- Glasses detection (with/without)
- Human detection (real/avatar)
- Multiclass
- Hair colour recognition (ginger, blond, brown, grey, black, bald)
-
Classification models: Scikit-learn, Keras, dlib, and OpenCV.
-
Data processing, storage, and representation: NumPy, Pandas, Time, OS, and MatplotLib.
- landmarks.py
Implements funtions on Haar Cascode, HOG, and Deep Learning-based face detectors for obtaining image landmarks from detected faces.
- classification.py
Includes the required functions for SVM and MLP implementation, as well as cross-validation testing.
- utils.py
Provides the utility functions for handling files and data used in landmarks.py and classification.py.
- testing.py
Calls the detection and classification functions and stores the results to csv. This file includes one function for binary tasks 1-4 and two for multiclass task 5. The landmarks previously stored in out/ are used by default to save time. To re-run the face detector, uncomment function update_features()
- models/lenet.py
Implements the LeNet architecture for the multiclass classification task
- code/out/
Includes all the results from the tests (see out/README.md) Face detector features are stored in Face_detection/ for convenience
- code/models/
Contains face detection models and the LeNet architecture setup file