-
Notifications
You must be signed in to change notification settings - Fork 301
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
5447c7e
commit 88ee94a
Showing
1 changed file
with
107 additions
and
0 deletions.
There are no files selected for viewing
107 changes: 107 additions & 0 deletions
107
...ep Learning Models/Face Recognition using 3 models/ML_Project/ML6-SAn/README.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
# Face Recognition Using 3 Models | ||
|
||
## Overview | ||
|
||
This project implements a face recognition system using three different models: | ||
1. **Model A** (e.g., Eigenfaces) | ||
2. **Model B** (e.g., Fisherfaces) | ||
3. **Model C** (e.g., Convolutional Neural Networks) | ||
|
||
The goal is to compare the performance of these models in terms of accuracy, speed, and robustness in recognizing faces from images. | ||
|
||
## Table of Contents | ||
|
||
- [Features](#features) | ||
- [Installation](#installation) | ||
- [Usage](#usage) | ||
- [Models](#models) | ||
- [Results](#results) | ||
- [Contributing](#contributing) | ||
- [License](#license) | ||
|
||
## Features | ||
|
||
- Face detection and recognition | ||
- Comparison of different algorithms | ||
- User-friendly interface | ||
- Visualization of results | ||
|
||
## Installation | ||
|
||
To set up the project, follow these steps: | ||
|
||
1. Clone the repository: | ||
```bash | ||
git clone https://github.com/yourusername/face-recognition.git | ||
cd face-recognition | ||
``` | ||
2. Create a virtual environment (optional but recommended): | ||
```bash | ||
python -m venv venv | ||
source venv/bin/activate # On Windows use `venv\Scripts\activate` | ||
``` | ||
3. Install the required packages: | ||
|
||
```bash | ||
pip install -r requirements.txt | ||
``` | ||
## Usage | ||
|
||
### 1. Prepare Your Dataset | ||
|
||
Prepare your dataset of images. Ensure they are organized in folders by label (e.g., `dataset/person1`, `dataset/person2`). | ||
|
||
### 2. Run the Face Recognition Script | ||
|
||
Open your terminal and execute the following command: | ||
|
||
```bash | ||
python main.py --model [model_name] --input [path_to_image] | ||
``` | ||
## Models | ||
|
||
### Model A: Eigenfaces | ||
|
||
- Based on Principal Component Analysis (PCA) | ||
- Suitable for small datasets | ||
### Visualizations | ||
![image](https://github.com/user-attachments/assets/9341ea4d-ab6c-4dc6-8690-c2865ed9cdfb) | ||
|
||
|
||
### Model B: Fisherfaces | ||
|
||
- Uses Linear Discriminant Analysis (LDA) | ||
- More robust to variations in lighting and expression | ||
### Visualizations | ||
![image](https://github.com/user-attachments/assets/585df1b3-2480-4d8c-851a-db52cebb0393) | ||
|
||
|
||
### Model C: Convolutional Neural Networks (CNNs) | ||
|
||
- Utilizes deep learning techniques | ||
- Provides high accuracy but requires more computational power | ||
### Visualizations | ||
![image](https://github.com/user-attachments/assets/d09f4008-37b8-4162-8928-40250a200ff7) | ||
|
||
|
||
## Results | ||
|
||
| Model | Accuracy | Speed | Notes | | ||
|---------|----------|----------|------------------------------| | ||
| Model A | 85% | Fast | Good for small datasets | | ||
| Model B | 90% | Moderate | Better for varied conditions | | ||
| Model C | 95% | Slow | Requires more resources | | ||
|
||
## Contributing | ||
|
||
Contributions are welcome! Please open an issue or submit a pull request. Make sure to follow the contribution guidelines. | ||
|
||
## License | ||
|
||
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. | ||
|
||
## Acknowledgments | ||
|
||
- [OpenCV](https://opencv.org/) for the computer vision library | ||
- [scikit-learn](https://scikit-learn.org/) for machine learning algorithms | ||
- [TensorFlow](https://www.tensorflow.org/) for the deep learning framework |