Free Source Code :Face Recognition Based Attendance System

Face Recognition Based Attendance System using Python and ML


In today’s fast-paced world, traditional attendance systems are becoming outdated and inefficient. Companies and institutions are now turning to more advanced technologies, such as face recognition, to streamline their attendance tracking processes. Face recognition technology has revolutionized the way we interact with computers and machines. By using biometric data, such as facial features, we can easily identify and authenticate individuals. This technology has found its way into various applications, including attendance systems.

Step 1: Making the Project

To create a face recognition-based attendance system, we first need to gather a dataset of facial images. This dataset will be used to train our machine learning model to recognize different faces. We can use libraries such as OpenCV and Dlib in Python to capture and process facial images.

Check more Projects :- https://www.youtube.com/@Decodeit2/playlists

Step 2: Essential Features

Features ๐Ÿ“‹

  1. Check Camera: Utilize the application to verify the functionality of connected cameras.
  2. Capture Faces: Enable users to capture images containing faces for training and recognition purposes.
  3. Train Faces: Train the system to recognize specific faces by providing a dataset of images for each individual.
  4. Recognize Faces & Attendance: Employ face recognition algorithms to identify individuals and track attendance automatically.
  5. Automatic Email: Implement functionality to send automatic emails, possibly for attendance reports or notifications.
Complete Java Course with Real Projects – Updategadh
Complete Java Course

Step 3: Required Software and Tools

Build With:

  • Python 3.7: The core programming language used for development.

Modules Used:

  • OpenCV (Contrib 4.0.1): A powerful library for computer vision tasks, including face detection and recognition.
  • Pillow: Python Imaging Library (PIL) fork for image processing tasks.
  • Numpy: Fundamental package for scientific computing with Python, used for array manipulation.
  • Pandas: Library for data manipulation and analysis, possibly used for handling data related to face recognition.
  • Shutil: Utility functions for file operations, essential for managing files within the application.
  • CSV: Module for reading and writing CSV files, used for data storage and retrieval.
  • yagmail: Python library for sending emails through Gmail.

Face Recognition Algorithms:

  • Haar Cascade: A machine learning-based approach used for object detection, particularly in images.
  • LBPH (Local Binary Pattern Histogram): A face recognition algorithm used after face detection, known for its simplicity and effectiveness.

Software Used:

  • PyCharm 2019.2: An Integrated Development Environment (IDE) for Python development.
  • VS CODE: Another popular IDE for code editing and debugging.
  • Git: Version control system for tracking changes in the codebase and collaboration.

Check 10+ ML and Python Projects

Step 4: Running the Web Application

Create Virtual Environment

To create an environment and install the required packages for running the project, follow these steps:

  1. Open the terminal or command line within your IDE (PyCharm or VS Code).
  2. Create a new Python virtual environment by executing the following command:

Copy code

python -m venv env
  1. Activate the newly created environment. For Windows, use the following command:

Copy code

  1. Now, your environment is activated, and you should see (env) in your command prompt to indicate that. This means you are now working within your virtual environment.
  2. After activating the environment, you can install the required packages. Usually, you would have a requirements.txt file containing the list of packages and their versions. You can install them using pip with the following command:

Copy code

pip install -r requirements.txt

Replace requirements.txt with the actual name of your requirements file.

  1. Once all the packages are installed, you’re ready to run the program. You can execute your Python scripts within this activated environment, ensuring that they have access to the installed packages without conflicts.

Notice: If your pc don’t have virtual enviroment or pip install the follow this link. How to create Virtual Enviroment ]

Setup For this Project

After creating the environment on your project let’s install the necessary packages.

Copy code

pip install opencv-contrib-python
Face Recognition Based Attendance System using Python and ML
Face Recognition Based Attendance System using Python and ML

Copy code

pip install numpy
Face Recognition Based Attendance System using Python and ML
Face Recognition Based Attendance System using Python and ML

Copy code

pip install pandas

Copy code

pip install Pillow

Copy code

pip install pytest-shutil

Copy code

pip install python-csv

Copy code

pip install yagmail

After creating the enviroment and installing the packages, open the IDE terminal/command line to run the program. Using the code below.

py main.py


  1. Change the mail information
  2. Run the project using the command line or your IDE Run Button

Step 5: Screenshots

  • Virus note: All files are scanned once-a-day by updategadh.com for viruses, but new viruses come out every day, so no prevention program can catch 100% of them
  • 1. Re-scan downloaded files using your personal virus checker before using it.
  • 2. NEVER, EVER run compiled files (.exe’s, .ocx’s, .dll’s etc.)–only run source code
WhatsApp Group Join Now
Youtube Click here
Instagram Click here
Telegram Group Join Now
E-Commerce Website Project in Java
E-Commerce Website Project in Java

This document file contains a project Synopsis, Reports, and various diagrams. Also, the abstract pdf file is inside the zip and you can modify it accordingly. Documents and Reports take 2-3 days to create as per the user Requirements

Latest Post


In conclusion, the integration of face recognition technology and machine learning algorithms in attendance tracking systems offers a more efficient and accurate solution. Implementing essential features, selecting the required software and tools, and developing a user-friendly web application are vital steps in creating a successful face recognition-based attendance system. Stay ahead of the curve by embracing the advancements in technology and optimizing attendance management processes with this innovative solution.


Face recognition based attendance system, limitations of face recognition based attendance system , face recognition based attendance system using machine learning , face recognition based attendance system using python source code , face recognition based attendance system project report -, face recognition based attendance system using python project report , face recognition based attendance system GitHub , face recognition based attendance system using python

Leave a Reply

Your email address will not be published. Required fields are marked *