Skip to content

riyanegi1211/Face-Recognition-Based-Attendance-System

Repository files navigation

Face-Recognition-Based-Attendance-System

Face Recognition

Face recognition is a biometric recognition technique. Biometric recognition is an information system that allows the identification of a person based on some of its main physiological and behavioral characteristics. Face recognition is a broad problem of identifying or verifying people in photographs and videos, a process comprised of detection, alignment, feature extraction, and a recognition task It has 4 steps which are :

  1. Face Detection
  2. Data Gathering
  3. Data Comparison
  4. Face Recognition

About the project

This is a python-basedapplication which provides an involuntary attendance marking system that operates without human intervention. It intends to serve as an efficient substitute for traditional manual attendance systems. It can be used in corporate offices, schools, and organizations where security is essential.

The system can also be used to maintain track of employees or students or other instructional activities where attendance is critical. In order to be recognised, students or employees must also register in the database. The user-friendly interface allows for on-the-spot registration. Using an admin account and password, the organization's admin can email the attendance of the day to the respective email address. Only the organization's administrators will have access to the attendance information, and no changes will be made to the attendance details.

It aims to automate the traditional attendance system where the attendance is marked manually. It also enables an organization to maintain its records like in-time, out time, break time and attendance digitally. Digitalization of the system would also help in better visualization of the data using graphs to display the no. of employees present today, total work hours of each employee and their break time. Its added features serve as an efficient upgrade and replacement over the traditional attendance system.

Scope of the project

Facial recognition is becoming more prominent in our society. It has made major progress in the field of security. It is a very effective tool that can help low enforcers to recognize criminals and software companies are leveraging the technology to help users access the technology. This technology can be further developed to be used in other avenues such as ATMs, accessing confidential files, or other sensitive materials. This project servers as a foundation for future projects based on facial detection and recognition. This project also converts web development and database management with a user-friendly UI. Using this system any corporate offices, school and organization can replace their traditional way of maintaining attendance of the employees and can also generate their availability(presence) report throughout the month.

Tech Stack Used

Built with

  • Jupyter Notebook

Modules Used

  • OpenCV
  • tkinter
  • Numpy
  • Pandas
  • imaplib
  • smtplib
  • yagmail
  • CSV

Facial Recognition Algorithms

  • Haar Cascade
  • LBPH (Local Binary Pattern Histogram)

Flowchart of the project

GUI of the project

The snapshots below demonstrate the GUI Interface of the attendance system, which is divided into several sections as mentioned below.

Main Window: It contains the options such as Admin, Member and Quit. The user will choose the preferred option based on its accessibility.

Admin Login Window: It is used to input the username and password of the admin account. If the username and password match with the admin account then it will login to the next window otherwise it will prompt you to re-enter the username and password.

AutoMail Window: This window allows the admin to mail the attendance report to the respective mail ID from the admin’s account credentials. This window will login only when the user will be able to provide the correct admin username and password.

Team Members

Riya Negi

Mohak Kala