Skip to content

The project aims to streamline the attendance-taking process by accurately identifying students and marking their attendance on specific dates.

Notifications You must be signed in to change notification settings

Amank-root/attendance_sys_using_opencv

Repository files navigation

Overview

Developing this from scratch in a week with no knowledge of pandas, tkinter, and face-recognition modules was challenging, yet exciting at the same time.

The project aims to streamline the attendance-taking process by accurately identifying students and marking their attendance on specific dates. Leveraging computer vision techniques, particularly face recognition, along with libraries such as OpenCV and pandas in Python, the system seeks to enhance efficiency, reduce errors, and provide a more effective means of managing attendance records.

Mechanism

  1. Data Collection: Gather images of students' faces for training the face recognition model.
  2. Training: Utilize OpenCV and the face-recognition module to train the model on the collected images to recognize specific individuals.
  3. Recognition: Capture images or video frames during attendance sessions and apply the trained model to recognize faces.
  4. Attendance Marking: Compare recognized faces with the database of students and mark them as present for the particular date using the Pandas library to manage attendance records.

Flowchart

Flowchart

Prerequisites

  • CMake
  • Dlib
  • Setuptools

Getting Started

git clone https://github.com/Amank-root/attendance_sys_using_opencv.git
cd attendance_sys_using_opencv
pip install virtualenv # Use only if venv is not installed

Creating and activating Python environment (Windows)

python -m venv env_name
env_name/Scripts/activate

Creating and activating Python environment (Linux)

virtualenv virtualenv_name
source virtualenv_name/bin/activate
# Command after setting up the environment
pip install -r requirement.txt

Running the script

python main.py

Training

Create an empty folder and add the images of the person you want to train. In the GUI interface, provide the path of the folder.

Testing

Ratan Tata Output

References

  1. Github (Face-recognition)
  2. Geek for Geeks
  3. YouTube (Tkinter Crash Course)

About

The project aims to streamline the attendance-taking process by accurately identifying students and marking their attendance on specific dates.

Topics

Resources

Stars

Watchers

Forks

Languages