Implementation of Fisherface Algorithm in MATLAB 7.5

Resource Overview

This study implemented the Fisherface algorithm using MATLAB 7.5, employing the ORL face database containing 40 subjects with 10 different facial images per person. The implementation utilized 9 images per subject for training (1 for testing), with all images resized to 112x92 pixels.

Detailed Documentation

This paper presents an implementation of the Fisherface algorithm in MATLAB 7.5, using the ORL face database which contains 40 subjects with 10 different facial images per person. The implementation follows a standard training-testing split where 9 images per subject are used for training and 1 image per subject for testing, with all images standardized to 112x92 pixel dimensions. The code implementation includes data preprocessing, feature extraction using Linear Discriminant Analysis (LDA), and classification stages.

Furthermore, to comprehensively evaluate algorithm performance, we conducted additional experiments with detailed code implementations. The preprocessing phase included noise reduction using Gaussian filtering and contrast enhancement through histogram equalization. We implemented k-fold cross-validation with multiple iterations to ensure statistical significance of results. Parameter tuning was systematically performed through grid search optimization to identify optimal configuration settings. The visualization module generated confusion matrices and ROC curves using MATLAB's plotting functions to provide intuitive performance analysis.

In summary, this implementation demonstrates the effectiveness of the Fisherface algorithm for face recognition through systematic experimentation on the ORL database using MATLAB 7.5. The complete code structure includes modular functions for data loading, preprocessing, LDA transformation, and classification, providing a reproducible framework for further research and practical applications in facial recognition systems.